2013-08-02 48 views
0

我有一個分支,v5,並創建一個新的分支,v6,以測試一項新功能。在將更改提交到分支之前,我對一些文件進行了一些更改並添加了一些文件。
當我檢出v5分支時,如我所料,通用文件的更改被「回滾」到v5,但我認爲特定於v6的新文件現在是v5的一部分。爲什麼?(錯誤)理解Git分支,結賬

+2

這是什麼混帳'說status'?你確定你在第6版中提交了這些文件,還是他們只是坐在你的工作副本中? –

+0

另外:獲得gitg(Linux)或gitx(MAC)。這對於可視化分支結構是不可或缺的。 –

+1

對於這種形式的[tag:git]問題,用複製粘貼的shell命令的形式生成一個測試用例會很有幫助,它會重現您的問題,否則很難說出您的描述是什麼意思。 (通過重現問題,我並不是指重現源樹的整個狀態,只需創建一個包含大量虛擬數據的新回購。) – millimoose

回答

5

聽起來像是你沒有做你做了你提交的分支v6之前「混帳添加」到新文件。他們仍然沒有跟蹤,並且git會在您切換分支時讓他們躺在附近。

0

假設你在分支v5上完成了「git add」和「git commit」,在分支v5的簽出時,添加文件將會消失。

窗戶打開文件的情況下,不移除。他們將保持爲新文件。

文件將從索引中刪除,但將保留在工作目錄中。如果你想從工作樹中刪除他們嘗試「混帳乾淨-xfd」到時候沒有文件應該是開放的。