1
什麼情況下(除.gitignore之外)git commit -a
不會自動實現git add
unstaged文件?我通常使用這個來保存一個步驟,但最近在我的一個回購協議中,我必須明確提出git add
之前的文件或他們不包括在內。沒有.gitignore
文件會阻止自動添加它們。文件是chmod a + x的事實是否有問題?不知道這會有所作爲。git commit -a -m不會添加不固定的文件
什麼情況下(除.gitignore之外)git commit -a
不會自動實現git add
unstaged文件?我通常使用這個來保存一個步驟,但最近在我的一個回購協議中,我必須明確提出git add
之前的文件或他們不包括在內。沒有.gitignore
文件會阻止自動添加它們。文件是chmod a + x的事實是否有問題?不知道這會有所作爲。git commit -a -m不會添加不固定的文件
git commit -a
永遠不會添加未跟蹤文件。它添加了修改的文件和刪除的文件。
從git help commit
:
-a, --all
Tell the command to automatically stage files that have been
modified and deleted, but new files you have not told Git about are
not affected.
文件通過.gitignore
忽略不包括在內,也不是通過.git/info/exclude
忽略的文件。任何一種情況下的文件都必須明確添加git add -f
。
啊,這回答,謝謝。 – johnbakers
請注意,通過忽略機制忽略的文件只有在未跟蹤時纔會被忽略。如果一個文件被忽略,已經存在於repo中或被強制添加('git add -f'),它將被忽略。 (我知道這部分已經在上面的答案了,只是試圖在這裏完成。:-)) – torek