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

相关文章

作业提交过程之HDFSMapReduce

作业提交全过程详解 (1)作业提交 第1步:Client调用job.waitForCompletion方法,向整个集群提交MapReduce作业。 第2步:Client向RM申请一个作业id。 第3步:RM给Client返回该job资源的提交路径和作业id。 第4步:Client提交jar包、切片信息和配置文件到指定的资源提交路径。 第5步:Client提交完资源后,向RM申请运行MrAp

hdu2241(二分+合并数组)

题意:判断是否存在a+b+c = x,a,b,c分别属于集合A,B,C 如果用暴力会超时,所以这里用到了数组合并,将b,c数组合并成d,d数组存的是b,c数组元素的和,然后对d数组进行二分就可以了 代码如下(附注释): #include<iostream>#include<algorithm>#include<cstring>#include<stack>#include<que

day-51 合并零之间的节点

思路 直接遍历链表即可,遇到val=0跳过,val非零则加在一起,最后返回即可 解题过程 返回链表可以有头结点,方便插入,返回head.next Code /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}*

git使用的说明总结

Git使用说明 下载安装(下载地址) macOS: Git - Downloading macOS Windows: Git - Downloading Windows Linux/Unix: Git (git-scm.com) 创建新仓库 本地创建新仓库:创建新文件夹,进入文件夹目录,执行指令 git init ,用以创建新的git 克隆仓库 执行指令用以创建一个本地仓库的

HTML提交表单给python

python 代码 from flask import Flask, request, render_template, redirect, url_forapp = Flask(__name__)@app.route('/')def form():# 渲染表单页面return render_template('./index.html')@app.route('/submit_form',

【每日一题】LeetCode 2181.合并零之间的节点(链表、模拟)

【每日一题】LeetCode 2181.合并零之间的节点(链表、模拟) 题目描述 给定一个链表,链表中的每个节点代表一个整数。链表中的整数由 0 分隔开,表示不同的区间。链表的开始和结束节点的值都为 0。任务是将每两个相邻的 0 之间的所有节点合并成一个节点,新节点的值为原区间内所有节点值的和。合并后,需要移除所有的 0,并返回修改后的链表头节点。 思路分析 初始化:创建一个虚拟头节点

Python3 BeautifulSoup爬虫 POJ自动提交

POJ 提交代码采用Base64加密方式 import http.cookiejarimport loggingimport urllib.parseimport urllib.requestimport base64from bs4 import BeautifulSoupfrom submitcode import SubmitCodeclass SubmitPoj():de

git ssh key相关

step1、进入.ssh文件夹   (windows下 下载git客户端)   cd ~/.ssh(windows mkdir ~/.ssh) step2、配置name和email git config --global user.name "你的名称"git config --global user.email "你的邮箱" step3、生成key ssh-keygen

查看提交历史 —— Git 学习笔记 11

查看提交历史 查看提交历史 不带任何选项的git log-p选项--stat 选项--pretty=oneline选项--pretty=format选项git log常用选项列表参考资料 在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。 完成这个任务最简单而又有效的 工具是 git log 命令。 接下来的例子会用一个用于演示的 simplegit

记录每次更新到仓库 —— Git 学习笔记 10

记录每次更新到仓库 文章目录 文件的状态三个区域检查当前文件状态跟踪新文件取消跟踪(un-tracking)文件重新跟踪(re-tracking)文件暂存已修改文件忽略某些文件查看已暂存和未暂存的修改提交更新跳过暂存区删除文件移动文件参考资料 咱们接着很多天以前的 取得Git仓库 这篇文章继续说。 文件的状态 不管是通过哪种方法,现在我们已经有了一个仓库,并从这个仓