2010-05-17 80 views
1

使用CVS,GIT中或其他技术(?文件系统级),我想:切换分支时保存/恢复git/cvs checkout会改变吗?

  1. 就分支变体A

  2. 结帐分支B:更改分支是“收起“(通过名称将是很好),支路B签出这样的,我的一个分支的变化都不见了

  3. 作出支路B

  4. 结帐支路A的修改:陈分支B被“收起”(通过名字会很好),分支A被检出使得我的分支B改变不见了,但是现在我的“已保存”分支从步骤#2改变回来了

Git-stash似乎不符合我所描述的流程,尽管我的印象可能是错误的。

涉及RCS或文件系统或命令行工具或其他方面的技术是值得欢迎的。

+0

这不是标准的分支/合并工作流吗?将更改提交给A,在B上签出,在B上提交更改,在A上检查。我是否错过了某些内容? – Paddy 2010-05-17 14:59:34

回答

1

git的藏匿处是工具,你正在寻找

# hack on A 
git stash 

git checkout B 
# hack on B 
git stash 

git checkout A 
git stash list # this is only to check which stash you want to pop 
git stash pop [email protected]{1} 

这应该工作

+0

啊,我的印象绝对错了!感谢您提供非常有用的小教程。 – 2010-05-17 15:11:00

+1

您也可以使用'git stash save'在您的内容中存储名称/消息。在切换分支或其他内容之前进行更改。大多数时候我觉得这很有帮助。 – 2010-05-17 17:00:40

+0

@rob美丽,谢谢 – 2010-05-17 18:40:20

0

如何混帐藏匿不适合你的工作流程,超越不会自动发生?这听起来像正好 git-stash是什么。

http://book.git-scm.com/4_stashing.html

+0

我想我错了git-stash的确看起来确实是我想要的。有点太手工,但也许我可以编写一些脚本。 – 2010-05-17 15:11:31

+0

我想完全失去了没有git-stash。 – rayners 2010-05-17 15:16:52