2013-07-18 129 views
2

我養成了使用.gitignore的習慣,總是在做git add -Agit status檢查修改後的文件,然後提交,所以我不需要記住我修改過的文件,其他開發人員不需要知道哪些文件被忽略。git add -A vs git add file

我仍然看到其他人爲每個修改文件做git add files

所以我想知道是否有添加每個文件的優勢。

問題是:爲什麼不總是使用git add -A

回答

3

當您開發一個功能時,您還可以修復您在瀏覽代碼時發現的一些錯誤或拼寫錯誤。這些更正與您的功能沒有直接關係,因此您可能需要單獨提交。 git add [something]可以讓你以這種方式工作。

+0

分支或'stash' /'藏匿應用'是否對工作更好? –

+0

嗯,我認爲這取決於修正的數量。分支和存儲也很好,有多種方法可以做同樣的事情。 – Frodon

+0

無論如何你回答了這個問題。謝謝 –

1

有時候,能夠在git存儲庫中擁有一個文件,並且沒有在.gitignore中列出文件,並進行不想提交的本地更改會很有用。

對我來說,這適用於例如Django的settings.py文件,其中我有時會進行更改以適應本地數據庫設置等。您仍然需要偶爾更改這些文件的位數,例如將位添加到INSTALLED_APPS,您仍然可以使用git add -p提交該位。替代方案將涉及到settings.py.example文件,並將settings.py添加到.gitignore,但您需要將示例文件的更改手動「合併」到實際設置文件中。如果你還沒有改變settings.py,你可以使用git add。

另一個用例是,如果您做了兩組更改,您希望彼此獨立提交。然後你可以使用git add [-p] <file>,提交併重複。當然,你需要確保你的差異是真正獨立的。

+0

+1對於Django示例:) –