1. git cherry-pick

作用:从一个branch上选择一个commit,添加该commit到另一个branch上。

  1. 切换到你想添加commit的分支上。

git checkout master

  2. 执行下面的代码

  

git cherry-pick <commit-hash>

2. git rebase

作用:git rebase命令是一个自动化的cherry-pick命令, 它会添加一个branch上的所有commit到另一个branch上(找到一个branch上的所有commit,然后按照顺序,一个一个的cherry-pick他们到另一个branch上)。

原理:

先寻找到两个branch的共同祖先(你所在的branch和你rebase的branch),得到你所在branch的所有commit,保存这些不同到临时文件,然后重置现在的branch到你想要rebase的commit,然后重新添加每一次的改变到现在的分支。执行如下命令:

1. git checkout experiment

2. git rebase master

然后切换到master分支,做一下合并。

1. git checkout master

2. git merge experiment

3. git revert

作用:git revert命令是git cherry-pick命令的相反命令。它会创建一个新的commit,主要用来撤销操作。

最新文章

  1. Java虚拟机JVM学习03 连接过程:验证、准备、解析
  2. 开启ACM的征途
  3. wpf 下面用MVVC的RelayCommand命令引发的一个异常
  4. iOS 杂笔-21(self.name = “object” 和 _name =”object” 有什么不同?)
  5. CSS skills: 6) auto hide the top bar javascript
  6. Class Fxp\Composer\AssetPlugin\Repository\NpmRepository does not exist
  7. C++学习笔记3——类的封装(1)
  8. 洛谷-哥德巴赫猜想(升级版)-BOSS战-入门综合练习1
  9. 使用font-size:0去掉inline-block元素之间的空隙
  10. 【iOS】UIDynamicAnimator动画
  11. 接口测试之postman简介
  12. mysql存储过程查询结果循环遍历 判断 赋值 游标等基本操作
  13. 【原创】大数据基础之Logstash(4)高可用
  14. c# 笔记cookie
  15. 网页出现400 Bad Request Request Header Or Cookie Too Large错误的解决方法
  16. HDU 1025 城市供应 【LIS】
  17. Golang数组注意细节
  18. JAVA课堂练习-动手动脑--数组
  19. web项目目录结构
  20. 微信公众号内唤起h5支付详解

热门文章

  1. iOS开发——pch文件创建
  2. 浅析IoC框架
  3. JavaScript DOM节点操作总结
  4. EF的join用法
  5. IOS开发-OC学习-Info.plist文件解析
  6. adapter中报错:Can&#39;t create handler inside thread that has not called Looper.prepare()
  7. osx c++连接mysql
  8. 全局文件 pch
  9. codeforces 755C. PolandBall and Forest
  10. Unity跨平台原理