git cherry pick
git cherry pick是一个非常强大的命令,它允许任意一个git commit通过commit的引用被更新到当前的工作最新分支。
使用场景
协作开发:例如后端和前端共同开发某个模块的功能,后端工程师定义了一些数据结构更新到了git中,前端可以紧紧使用git cherry pick 命令应用这次更新数据结构的commit的改动,然后前端小伙伴就可以愉快的使用共同协定的数据结构啦。
bug热修复:当发现bug时,肯定需要紧急修复避免问题影响更多的用户。例如开发人员正在一个new feature的分支上开发新的功能,此时需要修复线上bug,当前新开发的功能又不能更新到线上,那么开发人员可以提交一个特定的commit,该commit包含了这次修复bug的更新代码,这次commit可以被单独cherry-pick到master分支,然后测试-上线即可。
恢复丢失的commits:有时一些commit可能没有被合并到master分支,那么此时可以通过git log找到你想恢复的commit reference,然后通过git cherry pick恢复。
如何使用
当前的git分支图如下:
当前git分支图想将commit 'f'应用到master分支,操作如下:
git checkout master (确保当前分支为Master分支)
git cherry-pick f
那么现在的分支图如下:
after 'git cherry pick'其他参数:
-edit:
--no-commit:
--signoff:
网友评论