我创建了一个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