将仓库A中的部分提交迁移到仓库B中

结论: 使用git format-patch+git am即可实现
使用场景:

例如仓库A这里有5个提交记录,commitid1, commitid2, commitid3, commitid4,commitid5

仓库B想用仓库A中提交的代码,手动改比较慢,当改动较多的时候容易漏掉某个文件,那就可以用format-patch+am

参考网站:

git format-patch

git am

如何用:
  • 找到你想迁移的代码commitid
    比如:
    情景1,我想要迁移commitid2以后的所有提交,那么需要用commid2
    情景2,我想要迁移commitid2-commitid4的提交,那么需要记住commitid2和commitid4
  • 在仓库a中,运行
    情景1
    git format-patch commitid2 --output-directory filename
    情景2
    git format-patch commitid2..commitid4 --output-directory filename

    (output-directory  表示将补丁文件放在指定目录而不是当前文件夹中)
    ( filename是放在仓库A外面的某个空文件夹的url , 比如D盘的test文件夹,那就是D:/test)
    结果:
    在对应文件夹下生成多个补丁文件

  • 然后仓库B中执行
     

    git am -3 filename/xxx.patch

    (逐条执行,这样如果有冲突方便解决)

  • 遇到冲突会显示patch failed

    执行如下命令可以将冲突文件显示出来

    git apply --reject filename/XXX.patch

    比如一共改了四个文件a.jsx, b.jsx, c.json, d.js,
    其中a, c文件有冲突, 那么当你执行apply命令以后,
    b.jsx和d.js最新改动会加入到git中,紧挨着a.jsx和c.json文件生成xxx.rej文件
    打开xxx.rej文件,可以看到冲突的地方
    这个时候就需要你手动去a,c文件中修改冲突
    修改完
    删掉xxx.rej文件
    然后执行

    git am --resolved
    git push
如果遇到下面这种问题

 可以执行

git am --skip

然后重新  git am xxx 命令
 

当你结束git am  别忘了退出git am状态
​​​​​​​git am --abort

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/705140.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【linux进程信号(一)】信号的概念以及产生信号的方式

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:Linux从入门到精通⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学更多操作系统知识   🔝🔝 进程信号 1. 前言2. 信号的基…

java数据结构与算法刷题-----LeetCode501. 二叉搜索树中的众数

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 解题思路 二叉搜索树,是有序的,而其中序遍历正好是…

keil的首次尝试,芯片为stm32F103C6T6

已经试了一下,吐槽这个软件的使用好麻烦啊 安装 然后先去安装对应的pack 这个鬼玩意里找对应的芯片,或者去官网上下载 我是在这里搜到芯片,再去官网下载一个驱动 https://www.keil.arm.com/packs/stm32f1xx_dfp-keil/boards/ 会有一个安装…

安装淘宝镜像cnpm报错

npm 安装淘宝镜像报错 npm install -g cnpm --registryhttps://registry.npm.taobao.org 安装报 The operation was rejected by your operating system. npm ERR! Its possible that the file was already in use (by a text editor or antivirus), npm ERR! or that you la…

Jenkins使用遇到的一些问题

一:插件依赖报错 比如遇到一堆插件报错,不是提示版本对不上,就是启用不了 这样直接把Jenkins升级就行了,比如我这个是命令行启动的,直接把他替换就好了 如果是遇到插件依赖报错,比如A插件异常 则点击这个插…

HarmonyOS4.0系统性深入开发38Web组件概述

Web组件概述 Web组件用于在应用程序中显示Web页面内容,为开发者提供页面加载、页面交互、页面调试等能力。 页面加载:Web组件提供基础的前端页面加载的能力,包括加载网络页面、本地页面、Html格式文本数据。页面交互:Web组件提供…

【自然语言处理三-自注意self attention】

自然语言处理三-自注意力 self attention 自注意力是什么?自注意力模型出现的原因是什么?词性标注问题解决方法1-扩展window,引用上下文解决方法2-运用seq2seq架构新问题来了:参数量增加、无法并行的顽疾 自注意力self attention模…

嵌入式学习第二十一天!(线程)

线程: 1. 基本概念: 线程:线程是一个轻量级的进程,位于进程空间内部,一个进程中可以创建多个线程 2. 线程创建: 线程独占栈空间,文本段、数据段和堆区与进程共享 3. 线程调度: 与进程…

攻防世界MISC-神秘的交易

题目:--宝贝儿约吗~ --约~老地方吗 --嗯呐~等你哦 --上次送你的那张会员卡,我是用我们的门牌号的密码,爱你 --晚上等我! 惊了!怪不得柠檬师傅最近总往北街跑。看他午休的时候,我悄悄拿走了他的会员卡&#…

Netty NIO 非阻塞模式2(完善)

1.概要 1.1 说明 Netty NIO 非阻塞模式-CSDN博客 真对上面的问题,做些修正。主要解决如下问题。当客户端关闭或者强制关闭的时候,服务端关闭对应的SelectionKey。这样可以避免因异常退出,和不断的重复读取数据。 1.1.1客户端强制退出&…

变大再变大,matplotlib坐标轴刻度设置

文章目录 对数坐标系自定义映射对数图表重置刻度 matplotlib教程:初步📈子图绘制📈坐标投影 matplotlib支持重设坐标轴刻度,包括刻度值的重新映射和刻度标签的重新映射。前者可以调整坐标刻度的缩放比例,后者可以更改…

python基础-1

目录 print获取输出 input获取输入 python的基本数据类型 数字、字符串、列表 数字(Number) 字符串(String) 列表(List) 元组、集合、字典 元组(Tuple) 集合(Se…

基于springboot实现的海鲜销售系统

一、系统架构 前端:html | bootstrap | vue | js | css 后端:springboot | springdata-jpa 环境:jdk1.8 | mysql | maven | redis 二、代码及数据库 三、功能介绍 01. web端-注册 02. web端-登录 03. web端-首页 04. web端-…

【MyBatis-Plus】之queryWrapper.apply用法

目录 一、queryWrapper.apply的含义及其用法 二、其他方法 三、注意事项 官网地址:MyBatis-Plus https://baomidou.com/ 一、queryWrapper.apply的含义及其用法 QueryWrapper.apply() 是 MyBatis-Plus 提供的方法,用于构建动态 SQL 查询条件。它允许…

Gateway网关实战

目录 什么是API网关? 网关为什么出现? 什么是Spring Cloud Gateway? 核心概念 Spring Cloud Gateway实战 路由断言工厂(Route Predicate Factories)配置 路径匹配 Header匹配 过滤器工厂( Gateway…

【kubernetes】二进制部署k8s集群之cni网络插件flannel和calico工作原理

k8s集群的三种接口 k8s集群有三大接口: CRI:容器进行时接口,连接容器引擎--docker、containerd、cri-o、podman CNI:容器网络接口,用于连接网络插件如:flannel、calico、cilium CSI:容器存储…

NVIDIA\CUDA\cudnn安装以及visual studio2022编译安装ceres2.2.0库

一、NVIDIA驱动安装 网址:官方驱动 | NVIDIA 因为本文之后需要visual studio2022进行编译,所以在安装NVIDIA\CUDA\cudnn之前你先得安装visual studio2022 点击NVIDIA控制面板,NVIDIA Control Panel 查看产品家族 根据产品家族选择驱动,点…

[算法沉淀记录] 排序算法 —— 选择排序

排序算法 —— 选择排序 基本概念 选择排序是一种简单的排序算法,它的工作原理是每次从待排序的列表中选择最小(或最大)的元素,将其与列表中的第一个位置交换,然后继续对剩余的元素进行排序,直到整个列表…

基于Java SSM框架实现家庭食谱管理系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现家庭食谱管理系统演示 摘要 本论文主要论述了如何使用JAVA语言开发一个家庭食谱管理系统 ,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论…

【Git】window下大小写不敏感问题处理

在Windows环境下,Git因为文件名的大小写敏感性而导致了一些问题。 首先,Windows文件系统是不区分大小写的,这意味着在Windows中创建的两个文件名只有大小写不同,但字母顺序和字符完全相同的文件会被视为相同的文件。然而&#xf…