git 命令之-git cherry-pick
今天得到一个通知,这个业务版本里面部分已经开发但还没测试的内容要新开一个分支提交,但是我已经有几个提交上去了,难道只能一个一个文件复制到新的分支吗?我不,我找到了这个git命令,可以解决我的困惑,这个命令如题,我搜了下,它的作用可以是单个提交,多个非连续提交,多个连续提交,我担心多个一起提交有问题,所以我用的是单个提交。
主要过程是,在git 的提交查看网页中,找到commit hash,这个是提交的唯一标识,在git log中也能看到,将那个分支的提交hash复制下来,然后切换到新创建的这个分支,使用命令 git cherry-pick <commit-hash>,将指定的提交应用到当前分支的头部,创建一个新的、具有相同更改的提交。
多个非连续提交:就是用空格分开这些提交,但是我试了下有冲突,用git status查看当前文件状态并解决冲突
多个连续提交:就是将之前分支的连续的几个提交一起,
git cherry-pick start-commit-hash..end-commit-hash,中间有两个点,别忽略。
git cherry-pick start-commit-hash^..end-commit-hash,这个多个^表示包括起始这个hash
我这次遇到的就是这些,供需要的人参考,谢谢。