我正在努力變得更熟悉git。我是在這裏工作的唯一一個人,所以我一直都在努力修改主分支,但我需要一步一步來做,並且更加流利地與分支機構合作。所以昨天我創建了一個分支(QF1),切換到它並開始進行一些更改。當我切換回我的主分支時,我注意到了一些東西:它顯然切換了分支,並向我呈現了一個以「M」開頭的文件列表(順便說一下,雖然下面的輸出表示文件在這個階段上演,他們當時並沒有執行我的第一個「git checkout master」)。因此,在做了一些研究之後,我發現Ms表示git已將我在QF1分支中完成的更改合併到主控中。我不想讓這種事情發生。我仍然對此有點模糊,但我正在通過git-scm.com來更好地理解它。我以爲切換分支會將主人的副本拉回到我的工作目錄中,但我的編輯並沒有告訴我發生了這種情況(gvim)。Git&自動合併分支與主分支
- 我不希望這再次發生。 git中有什麼我可以設置告訴它不切換分支,如果工作目錄中有更改的文件尚未提交或至少添加到分支索引中?
我是否需要在這裏使用「git reset」將我的主分支指向我爲master所做的最後一次提交?我沒有在這裏做過任何事情,只是做了一個「git add」。
$ git status # On branch QF1 # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # modified: AuthNotifyResponse.cpp # modified: AuthNotifyResponse.h # modified: DataElementsTransactionResponse.cpp # modified: DataElementsTransactionResponse.h # modified: TransactionSession.cpp # modified: authNotifyResponse.xsd # modified: xch.h # $ git checkout master M AuthNotifyResponse.cpp M AuthNotifyResponse.h M DataElementsTransactionResponse.cpp M DataElementsTransactionResponse.h M TransactionSession.cpp M authNotifyResponse.xsd M xch.h Switched to branch 'master' $ git checkout QF1 M AuthNotifyResponse.cpp M AuthNotifyResponse.h M DataElementsTransactionResponse.cpp M DataElementsTransactionResponse.h M TransactionSession.cpp M authNotifyResponse.xsd M xch.h Switched to branch 'QF1'
我真的不希望,因爲它們涉及的項目在這裏另一組正在提交修改到QF1,並沒有完成他們。如果這是我需要做的,我可以提交它們並在稍後修改提交。
也許我可以放寬主人的變化?我只是在QF1中並沒有真正把它們放在主人手中。
我想我真的可以將更改提交到分支,而不是將我的提交推送到存儲庫,或者我可以使用git存儲。 –