git cherry-pick 合并某次提交

2023-10-14 03:44

本文主要是介绍git cherry-pick 合并某次提交,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、无冲突的情况

1、合并其它分支某次提交

切换到主分支,想把其他分支的某次commit修改 合并到主分支上,

可以用 git cherry-pick 命令

比如,其它分支,某次提交的commit Hash 是30e48158badc39801f1ce3cb375a07b872d6f220 ,

想合并这次提交

可以  git cherry-pick 30e48158badc39801f1ce3cb375a07b872d6f220

示例:

$ git status
On branch 2.0-cef91
Your branch is ahead of 'origin/2.0-cef91' by 1 commit.
  (use "git push" to publish your local commits)
 

2、查看合并提交后,修改了什么

当前分支,自动多了一个提交

可以 使用git log ,看看当前分支commit log

当前HEAD 是最新COMMIT

origin是之前主分支的commit提交

查看 修改了什么 使用 git diff 这个origin分支的HASH值

二、有冲突的情况

1、合并其它分支另一个commit

     这个commit分支修改的比较多,可能有冲突

这个就有冲突,有些dll  lib 二进制文件冲突了

2、看合并了哪些,冲突了哪些

1)、git status

2)、取消cherry-pity

有冲突的话,可以先取消 

git cherry-pick --abort

三、解决冲突

1、git cherry-pick -n <commit_id>

不自动提交

-n, --no-commit don't automatically commit

2、git status 查看冲突文件

3、冲突的文件 忽略掉

我想保留主分支上文件,忽略掉commit分支上冲突的文件

需要用到 git reset    git checkout  命令

1)、git reset

重置暂存区的文件与上一次的提交(commit)保持一致

这里重置冲突的文件,与上次提交时保持一致

2)、git checkout -- file

将暂存区文件拉取还原

3)这两个命令目的

就是将冲突文件重置为冲突之前的状态,忽略掉commit 分支的修改

git reset HEAD <file_name>
git checkout -- <file_name>

4)没有冲突文件后,重新commit

这样就忽略了冲突,只合并了想合并的文件了

这篇关于git cherry-pick 合并某次提交的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/207908

相关文章

Python使用python-can实现合并BLF文件

《Python使用python-can实现合并BLF文件》python-can库是Python生态中专注于CAN总线通信与数据处理的强大工具,本文将使用python-can为BLF文件合并提供高效灵活... 目录一、python-can 库:CAN 数据处理的利器二、BLF 文件合并核心代码解析1. 基础合

IDEA中新建/切换Git分支的实现步骤

《IDEA中新建/切换Git分支的实现步骤》本文主要介绍了IDEA中新建/切换Git分支的实现步骤,通过菜单创建新分支并选择是否切换,创建后在Git详情或右键Checkout中切换分支,感兴趣的可以了... 前提:项目已被Git托管1、点击上方栏Git->NewBrancjsh...2、输入新的分支的

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

SpringBoot+Redis防止接口重复提交问题

《SpringBoot+Redis防止接口重复提交问题》:本文主要介绍SpringBoot+Redis防止接口重复提交问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录前言实现思路代码示例测试总结前言在项目的使用使用过程中,经常会出现某些操作在短时间内频繁提交。例

git stash命令基本用法详解

《gitstash命令基本用法详解》gitstash是Git中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改,这篇文章主要... 目录一、基本用法1. 保存当前修改(包括暂存区和工作区的内容)2. 查看保存了哪些 stash3. 恢

Python中合并列表(list)的六种方法小结

《Python中合并列表(list)的六种方法小结》本文主要介绍了Python中合并列表(list)的六种方法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋... 目录一、直接用 + 合并列表二、用 extend() js方法三、用 zip() 函数交叉合并四、用

IDEA实现回退提交的git代码(四种常见场景)

《IDEA实现回退提交的git代码(四种常见场景)》:本文主要介绍IDEA实现回退提交的git代码(四种常见场景),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.已提交commit,还未push到远端(Undo Commit)2.已提交commit并push到

利用Python实现Excel文件智能合并工具

《利用Python实现Excel文件智能合并工具》有时候,我们需要将多个Excel文件按照特定顺序合并成一个文件,这样可以更方便地进行后续的数据处理和分析,下面我们看看如何使用Python实现Exce... 目录运行结果为什么需要这个工具技术实现工具的核心功能代码解析使用示例工具优化与扩展有时候,我们需要将

Python实现获取带合并单元格的表格数据

《Python实现获取带合并单元格的表格数据》由于在日常运维中经常出现一些合并单元格的表格,如果要获取数据比较麻烦,所以本文我们就来聊聊如何使用Python实现获取带合并单元格的表格数据吧... 由于在日常运维中经常出现一些合并单元格的表格,如果要获取数据比较麻烦,现将将封装成类,并通过调用list_exc

MySQL中的两阶段提交详解(2PC)

《MySQL中的两阶段提交详解(2PC)》:本文主要介绍MySQL中的两阶段提交(2PC),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录引言两阶段提交过程sync_binlog配置innodb_flush_log_at_trx_commit配置总结引言在Inn