我創建了一個branch A
,做了一些更改,並且「一切正常」I committed
。 然後我繼續在A工作,但一切都變得相當混亂,但是我在這個混亂中有一個很好的直覺(也許它不是大聲笑)。git存儲和分支以前的工作版本?
是否有形式stash
殘局,創建一個新的branch B
從起始「一切正常」 in branch A
,繼續branch B
工作?我想回到branch A
以後的混亂,並希望合併。
我創建了一個branch A
,做了一些更改,並且「一切正常」I committed
。 然後我繼續在A工作,但一切都變得相當混亂,但是我在這個混亂中有一個很好的直覺(也許它不是大聲笑)。git存儲和分支以前的工作版本?
是否有形式stash
殘局,創建一個新的branch B
從起始「一切正常」 in branch A
,繼續branch B
工作?我想回到branch A
以後的混亂,並希望合併。
如果你想創建一個新的分支,就沒有必要存儲。您可以從最新的良好提交開始創建一個新的分支。 在branch A
中,通過使用git log
獲得最新良好提交的散列。然後運行:
git checkout <branchA_hash> -b branchB
這將創建一個名爲branchB
新的分支,在更新犯下您選擇。
在任何時候,您都可以通過再次檢查出來,然後再次回到雜亂的分支A處。
如果我正確理解你的問題......
#Stash those changes
git stash
#Create a new branch - all changes are now stashed
git checkout -b branchB
#Restore stashed changes
git stash pop
#Commit "mess" on branch B
git commit -a -m "what a terrible mess..."
#Change to branch A
git checkout branchA
正如你所說的,後來合併將需要。
可以使用
git checkout <A_Branch> -b Bbranch
他不希望branchA_hash,他希望branchA_hash〜X,要回以前看過的branchA – 2014-09-25 14:54:32
這正是我說的是「一切正常」點。 'branchA_hash'不是指向HEAD的指針,而是最新良好提交的散列。 – 2014-09-25 15:28:20