git用法-打补丁

时间:2021-08-31 15:56:20

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上)。

原理:

git用法-打补丁

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

1. git checkout experiment

2. git rebase master

git用法-打补丁

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

1. git checkout master

2. git merge experiment

git用法-打补丁

3. git revert

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