我是Git新手。GIT:添加文件添加到所有分支
我創建了一個關閉主分支。我正在那個部門工作。然後我去在這個新分支中創建一個新文件。然後我切換回主人來查看一些東西。
我看到那個文件,我剛添加時,我切換到主要作爲文件添加?我不想將該文件添加到主分支。那些分支不是應該完全獨立嗎?我將它添加到新分支,而不是主分支。我怎樣才能分開分支?
我是Git新手。GIT:添加文件添加到所有分支
我創建了一個關閉主分支。我正在那個部門工作。然後我去在這個新分支中創建一個新文件。然後我切換回主人來查看一些東西。
我看到那個文件,我剛添加時,我切換到主要作爲文件添加?我不想將該文件添加到主分支。那些分支不是應該完全獨立嗎?我將它添加到新分支,而不是主分支。我怎樣才能分開分支?
如果你的文件是git add
,但是在提交之前切換分支,分步添加將會轉移到新分支(就像任何其他分階段更改一樣)。在切換分支之前,您可能想要commit
。
在分支之間切換工作副本時,會保留任何未提交的更改,包括未添加到存儲庫的文件。
只是製作一個新文件不會自動將其添加到存儲庫,您必須做一個git add myFile
(並最終commit
那)。
或者,換一種方式來看,即使文件在切換分支時停留在工作副本中,它也不會成爲其他分支的一部分,除非您在那裏顯式添加並提交它們。
其實我還沒有做過git add,我剛剛創建了這個文件並將它添加到了文件夾中。但聽起來最好的做法是隱藏更改,以避免此問題。只需確保在切換之前完成。文件更改也會讓人困惑,因爲我不知道哪個分支文件被更改了。 – user1161137
除了Thilo的(正確)答案,值得記住的三個「部分」(我不確定在這裏使用什麼術語)有提交時的工作:有*提交*在存儲庫中,但有*索引(也稱爲*暫存區*或有時*高速緩存*)和*工作樹*,您可以在其中查看和編輯該文件。工作樹中的文件僅在工作樹中。 'git add'ed文件在索引中的工作樹*和*中。 * git commit'時,索引*會變成下一次提交,但是在那之前,文件只是在索引中浮動。 – torek