2011-03-31 122 views
0

我添加了几个文件到我的git仓库。然后我添加了一个目录并将它们移到那里。然后我添加目录使用git addGit终端输出

这是什么意思告诉我?

On branch master 

Changes to be committed: 
(use "git reset HEAD <file>..." to unstage) 

new file: newDir/TMXParser.c 
new file: newDir/Tilemap.c 
new file: newDir/test.xml 
new file: newDir/tileImage2.png 
new file: TMXParser.c 
new file: Tilemap.c 
new file: test.xml 
new file: tileImage2.png 

Changed but not updated: 
(use "git add/rm <file>..." to update what will be committed) 
(use "git checkout -- <file>..." to discard changes in working directory) 

deleted: TMXParser.c 
deleted: Tilemap.c 
deleted: test.xml 
deleted: tileImage2.png 

Untracked files: 
(use "git add <file>..." to include in what will be committed) 

.DS_Store 

如果我提交的文件被添加两次?如何从终端删除这个.DS_Store?

+0

您在使用'git的mv'移动的文件或只是'mv'?我猜 – 2011-03-31 21:19:51

+0

我只是把它们拖到文件夹中,所以它看起来好像全部都是由终端完成的,在上面的例子中,新文件和删除的文件会互相取消,或者这条消息是 – jarryd 2011-03-31 21:27:05

+0

[jleedev's answer](http://stackoverflow.com/questions/5506421/git-terminal-output/5506472#5506472)下面 – 2011-03-31 21:32:01

回答

5

正确的方法是使用git mv将文件移动到目录中;因为它可以简单地git rm他们。你已经告诉git你想将拷贝到这些文件到子目录中。一旦你git rm他们,输出git status会告诉你,git想要的文件移动到子目录中。

一个快捷方式是git add -u,它通知git已被修改或删除的文件。不过,它不会添加新文件。如果您重命名文件,最简单的方法是使用git add -A来查看修改,删除和未跟踪的文件。它将删除您的四个已删除的文件并添加.DS_Store文件。

隐藏.DS_Store文件的最好方法是在全球忽略它:

git config --global core.excludesfile '~/.gitignore' 
echo .DS_Store >> ~/.gitignore 
0

这些文件正在添加一次。在newDir文件夹中。什么是删除它的git对根文件中的这些文件的引用。

要删除.DS_Store,请创建一个名为.gitignore的文件,并在其中放置一行说'.DS_Store'(不带引号)。

也许你想'混帐添加'。然后'git commit -m'我的信息''

0

这个输出告诉你,你有一堆新的文件将被提交下次你做git commit,一些在NEWDIR时间还有一些在你的顶级目录中。

然后在你的根目录中有一些文件已被删除。您可以执行git add -u,然后执行git commit来提交该更改。

如果您只是移动这些文件而不修改它们,您可以执行这两个步骤,git会自行确定这些文件已被移动。

和你有一个文件,该文件的git一无所知.DS_Store(你或许应该添加到的.gitignore。