我在Windows上使用git(实际上,msysgit)1.6.4。大部分时间我都在某些功能分支上工作。偶尔,我想跳回到主人面前挑选我在功能分支中做的一个特定提交 - 通常是因为它是一种有用的错误修正,即使没有该功能也是有意义的。我的工作流程是这样的 - 如果这是过于复杂,请:-)告诉我:有没有简单的方法来改变以前活跃的分支?
git checkout -b mycoolfeaturebranch // hack away, implementing a feature and one bugfix (while I'm at it) git add file_with_bugfix.cpp git commit -m "Fixed bug 12345 // commit the bugfix git checkout master // hop over to master git cherry-pick // bring the bugfix into master
在这一点上,我通常会想跳回到我的特性分支上继续该功能的工作。不幸的是,我的分支名称往往会变得有点长(比如,'mycoolfeaturebranch'),而我在Windows上没有git分支名称选项卡完成。
在Unix shell中可能有类似cd -
的东西(跳到上一个目录,对于在两个目录间切换很有用)? A git checkout -
会很棒。 :-)
啊!我尝试了一些旧的git版本,但没有重试,因为我升级到git 1.6.4。 D'哦!感谢您指出了这一点! – 2009-10-21 10:56:14