2011-03-31 104 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。