我在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