`
kingquake21
  • 浏览: 268530 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

用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(失败)

5. 使用git apply 0001-.patch即可,还需要自己commit,push

 

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

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

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

3.git apply abc.patch即可

分享到:
评论

相关推荐

    git 2.20 x64

    5. **合并冲突解决**:当多个开发者修改同一部分代码时,Git会提示合并冲突,用户可以手动解决这些冲突后再提交。 Git 2.20 版本可能包含了性能优化、新特性和修复的bug。升级到最新版本可以确保利用到Git的所有...

    Git基础功能.pdf

    而merge命令则是用来合并分支,即将两个分支的变更合并到一起。 Git还支持远程仓库管理。远程仓库是被称作“origin”的默认远程仓库以外的仓库。在多人协作的项目中,通常会有一个共享的远程仓库,团队成员可以在...

    看日记学git

    `git merge <branch_name>`将指定分支的更改合并到当前分支。 - **远程仓库操作**:`git remote add origin <url>`添加远程仓库;`git push origin <branch_name>`将本地分支推送到远程仓库;`git pull origin ...

    git版本管理软件

    - **不在执行储藏的分支上恢复**:先切换到正确的分支再使用`git stash pop`。 - **不在分支的一个工作点恢复**:确认工作区状态后再恢复储藏。 通过上述内容,我们可以了解到Git的基本操作和常用命令,这对于...

    Git User’s Manual

    - **合并分支**:使用`git merge`命令将一个分支合并到当前分支。 - 示例命令:`git merge <branch-to-merge>` **8. 查看旧版本而不创建新分支** - 使用`git checkout`命令加上特定的提交ID或标签来查看旧版本的...

    git-cheat-sheet.pdf

    - `git merge branch`:将指定分支合并到当前分支。 - **创建分支**: - `git branch branch`:基于当前分支创建新的分支。 - `git checkout -b new other`:基于其他分支创建新分支并切换到该分支。 ##### 发布...

    Git Version Control Cookbook 2nd Ed-2018.7.pdf

    - **变基操作**:使用`git rebase <branch>`命令可以将当前分支上的更改移动到另一个分支的顶部。 - **冲突处理**:当合并或变基过程中发生冲突时,需要手动解决冲突,并使用`git add <conflicted-file>`和`git ...

    Git版本管理用法详解

    从2005年开始,Git经历了多个版本的迭代更新,逐步成为现在这样功能完善、性能强大的版本管理工具。 Git的几个核心特性包括:开源,意味着用户可以自由使用且没有专利限制;支持非线性开发,它能很好地支持多个并行...

    Git gui(git客户端)64位 v2.12.0.zip

    它胜过SCM工具,如颠覆,CVS,Perforce公司,和ClearCase与像廉价的本地分支,便捷的中转区,和多个工作流功能。与CVS、Subversion一类的集中式版本控制工具不同,它采用了分布式版本库的作法,不需要服务器端软件,...

    Git-2.22.0.rar

    11. **补丁与cherry-pick**:`git format-patch`可以创建补丁文件,方便分享或应用单个或多个提交。`git cherry-pick`用于将一个提交的应用从一个分支到另一个分支。 12. **重置与回退**:`git reset`是一个强大的...

    git常用命令

    - `git rebase master <branch>`将master分支的变更应用到另一个分支,相当于一系列的`git co`, `git rebase`, `git co`操作。 15. Git的补丁管理: - `git diff > ../sync.patch`生成补丁文件,方便在多台机器间...

    Git基本原理与实践

    - **合并(Merge)**:将两个或多个分支的更改合并到一起。 - **变基(Rewrite History)**:改变提交历史,重新组织分支之间的关系。 - **撤销(Undo)**:撤销最近的更改或提交。 - **补丁(Patch)**:将特定的更改导出为...

    Git命令大全1

    - **合并分支**:`git merge <branch>` 将指定分支的改动合并到当前分支。 - **rebase**:`git rebase <branch>` 将当前分支的提交移动到指定分支的顶端,使历史线更清晰。 ### Git 补丁管理 通过`git format-...

    git-tutor.rar_control_git

    6. **合并(Merge)**:将一个分支的更改合并到另一个分支,通常用于把开发分支的更新合并到主分支。 7. **远程仓库(Remote Repository)**:如GitHub、GitLab等平台提供的在线仓库,可以通过`git push`和`git ...

    Git-2.34.1-64-bit.7z

    5. **合并(Merge)**:将一个分支的更改合并到另一个分支。 6. **拉取(Pull)**:从远程版本库获取并合并最新更改到本地。 7. **推送(Push)**:将本地的更改推送到远程版本库。 8. **重置(Reset)**:撤销提交...

    Git Magic.pdf

    - **合并**:使用`git merge`命令合并两个分支的更改。 - **不间断工作流**:指使用`git stash`等命令可以暂时隐藏当前工作以便处理其他任务。 - **重组杂乱**:`git filter-branch`等高级命令可以帮助整理混乱的...

    你不知道的GIT命令这里都有!

    2. **rebase**:`git rebase <branch>`将当前分支的变更应用到另一个分支之上,使历史线更简洁。 **Git 补丁管理** 当你在多台机器上开发时,`git format-patch`可以创建补丁文件,然后通过`git am <patch_file>`...

Global site tag (gtag.js) - Google Analytics