2012-11-16 60 views

回答

9

git的櫻桃採摘$ from_sha .. $ to_sha

+0

肯定這樣做的正確方法:) – g19fanatic

+0

你知道當'git cherry-pick HEAD..branch-name'? – Uri

0

的一種方式做手工(不採摘櫻桃)


從你的分支的頭做一個新的分支提交所在位置git branch newB

硬復位此新分支到最後一次提交git reset --hard <shaID of Commit19>


方法1

做的混合復位到直接提交之前的第一次提交git reset --mixed <shaId of the mentioned commit>

做一個存儲在該「改性的」代碼只是有提交1至19 git stash

轉到你想應用本手冊櫻桃挑選和做一個流行的地方git checkout <dstBranch> & & git stash pop


方法2(此方法將保持提交消息)

做一個硬復位到提交權利之前第一次提交git reset --hard <shaId of the mentioned commit>

做的reflogs以前的狀態git merge --squash [email protected]{1}

壓扁合併

現在你會看到提交1-19將被索引,如果你做了提交,提交msg將被預填充所有的單個提交msgs ...允許你修改msg爲想要的

現在你有了自己的承諾,櫻桃選擇這個承諾到你想要的地方。它具有所有想要的提交消息的好處。


刪除臨時分支擺脫所有你已經完成了做垃圾的內部挑git branch -D newB