我得到了一個項目文件,就像這樣:跟蹤更改
MyProject/
a.txt
b.txt
c.txt
我在目錄初始化一個Git回購,但(愚蠢)沒有添加所有文件到開始回購。相反,在我意識到需要更改它們之前,我將文件添加到回購中。
git add a.txt; git commit -m "Pristine A"
<awesome changes to a.txt>
git commit -am "Awesome Changes"
不幸的是,在我瘋狂的編輯狂熱中,我忘了爲某些文件做這件事。 (閱讀:幾十文件在多個目錄中,這將是很難用明確的路徑找到)
<awesome changes to b.txt>
git status # Uh oh, new file b.txt
我可以在我真棒變化獲得該項目的快照,這樣的Git能告訴我哪自那時起文件發生了變化。但是,我不想丟失我已經添加的數十次提交(帶有描述)。
如何獲得「原始」快照,並讓Git計算哪些文件與我的工作目錄相比發生了變化,而不會丟失我現有的提交,也不會爲那些已更改但已記錄的文件獲得誤報在提交?
FWIW我原來的「正當理由」在一開始不添加整個目錄,是因爲有成千上萬無關我的工作文件,目錄是唯一可用的高延遲SMB,我認爲那我知道哪些文件很重要。
這是全部在一個分支上嗎? – vergenzt 2012-07-12 17:14:57
@vergenzt是的,所有在主分支。 – Phrogz 2012-07-12 17:19:43
此外,只是爲了澄清,這是準確的:你目前的回購顯示'b.txt'和'c.txt'已被創建在後來的提交中,但你希望它顯示它們已被創建(作爲初始提交中的原始副本),以下提交只是更改它們? **編輯:**沒關係,我想我現在明白你的問題。 – vergenzt 2012-07-12 17:20:14