我以爲我已經對Git有了一個體面的把握,但剛纔我一直很驚訝。我認爲分支機構會隔離其他分支機構的變化,所以我開始在一個新分支機構進行大型實驗性重構。這個重構意味着移動很多文件。當我切換到主人時,我仍然可以看到變化!Git:分支應該隔離變化,還是不應該?
我去了我的沙箱庫複製的問題:
$ git branch crazy-refactoring
$ git checkout crazy-refactoring
$ rm README
$ git checkout master
$ git status
# On branch master
# Changes not staged for commit:
# (use "git add/rm <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# deleted: README
#
no changes added to commit (use "git add" and/or "git commit -a")
$ ls README
ls: cannot access README: No such file or directory
爲什麼?我創建一個分支的關鍵在於,我可以嘗試一些東西,如果不成功,就把它扔掉。 Toughts?
您沒有提交刪除。只有承諾的變更是「孤立的」。 –
你是對的,在提交README之後,在瘋狂重構分支中,它重新出現在master分支中。也許我錯過了一些東西,但是在我看來,這是一種奇怪的和不受歡迎的行爲。 – stivlo
它首先讓我感動,但現在我總是依靠這種行爲,當我對一個分支做了一堆更改並決定將它放在一個單獨的分支上以備後用。 – butter71