用git patch的模式merge功能点到多个分支

用git patch的方式merge功能点到多个分支

 

经常会遇到要在分支和主干上同时做相同的修改,可以使用打补丁的方式

一种做法是用git format-patch

1. 在一个分支上修改好之后,提交,并拿到submit号,例如ab68d50e804b9b31c831a203fae2f0693f29930d

2. git format-patch -M -C ab68d50e804b9b31c831a203fae2f0693f29930d~1..ab68d50e804b9b31c831a203fae2f0693f29930d

表示一个范围,~1表示之前一个提交

3. 上面这步会生成一个0001-.patch文件(文件名可能不同)

4. 切换到另一个分支上,git am 0001-.patch

 

我在应用.patch文件到分支上时失败,于是我用了另外一种方法

1.在一个分支上修改好后,暂不提交,用git diff > abc.patch生成一个diff文件

2.提交到当前分支后切换到另一个分支

3.git apply abc.patch即可