git merge 快速合并时会以某个文件新的操作为准,如果master将一个dev合并进来,而dev分支中对某个文件进行过删除操作,那么merge之后master就会将那个文件删除。

举个例子:

master 分支创建文件 1.txt 并 commit -> 创建分支 dev -> dev 删除1.txt 并 commit

此时如果在master分支git merge dev , master分支的1.txt 被删除,成功快速合并;而如果是在dev分支 git merge master, 会显示already up-to-date, 因为1.txt在dev分支已经被删除了,不必更新。

如果操作改为:

master 分支创建文件 1.txt 并 commit -> 创建分支 dev -> dev 删除1.txt 并 commit -> master 修改1.txt 并commit

此时如果进行merge操作,就会产生冲突。master分支也对该文件进行了修改,dev分支也对该文件进行了修改,合并时就要手动解决冲突,commit之后再merge。

我考虑这个问题的缘由是,fork了他人的仓库,进行了commit,之后原仓库的分支也推进了,打算合并下,于是就创建了个branch,删除所有文件,拷贝原仓库分支的文件,再本地进行merge。然后我的更新就被快速合并删除掉了。。。解决方式是直接进行拷贝,覆盖(我额外添加的文件merge之后不变,我没有的文件merge之后添加,同时改动的文件以他的为准,merge之后进行合并处理)

或者删除之后再恢复那些文件

git checkout [commit id] -- [被删除的文件/文件夹]

git merge 之后文件被删除相关推荐

  1. git merge 单个文件

    在使用git 进行项目代码管理的时候,我们通常会有多个分支,例如A,B两个分支,我们队A分支做了大量的修改,修改完成之后只想把A分支上的a文件合并到B分支上面,而不动其他修改了的文件.此时应该如何操作 ...

  2. 【Git】Git 分支管理 ( 创建并切换分支 | 查看分支 git branch | 合并分支 git merge dev | 删除分支 git branch -d dev )

    文章目录 一.创建并切换分支 1.创建分支 git branch dev 2.切换分支 git checkout dev 3.创建并切换分支 git checkout -b dev 二.查看分支 gi ...

  3. git 提交 全部文件

    原文:https://www.cnblogs.com/smuxiaolei/p/7484678.html git add .  git add xx命令可以将xx文件添加到暂存区,如果有很多改动可以通 ...

  4. 执行git merge,合并两个分支的代码,其中某个分支的文件或代码被删除或被覆盖

    项目情景:现有一套公司产品源码V1.0,我的工作任务是要在产品源码上进行二次开发 针对于git 项目,假设现有远程分支master(产品源码),将代码克隆下来,在此基础上进行开发,并将开发的代码推送到 ...

  5. Git 高频命令、版本回退、分支操作、文件修改删除、撤销、标签、远程仓库推送、拉取

    1. 高频命令 git add 将工作文件修改提交到本地暂存区. git add . 将所有修改过的工作文件提交暂存区(常用). git commit -m "XXX" 为本次修改 ...

  6. 配置Beyond Compare 4作为git mergetool来解决git merge命令导致的文件冲突

    文章目录 前言 解决方案 前提 配置 Beyond Compare 文件冲突及处理 产生冲突 解决冲突 工具配置的参数含义 git config git mergetool 思考 总结 前言 使用 g ...

  7. 【解决方案 七】---Git Merge时“交换文件.MERGE_MSG.swp已经存在”的问题

    这篇博文是因为最近在使用git merge合并其他小伙伴的分支的时候爆出了这个问题,Swap file .MERGE_MSG.swp already exists有点儿看不懂,于是从网上搜了下,从一个 ...

  8. git如何合并指定文件内容_git小技巧--如何从其他分支merge个别文件或文件夹

    在实际工作中,一个大型的项目或版本迭代可能不是一次上线,可能会分好几次上线,这时候就会涉及创建多个分支,进行分别开发. 创建分支 功能分为2个分支,分别为A.B. A上面有个列表页功能 B上面有个详情 ...

  9. Git本地仓库文件的创建、修改和删除

    目录 基本信息设置 1.设置用户名 2.设置用户名邮箱 Git仓库操作介绍 1.创建一个新的文件夹 2.在文件内初始化git仓库(创建git仓库) 3.向仓库中添加文件 1.创建一个文件 2.将文件添 ...

最新文章

  1. JAVA通信系列三:Netty入门总结
  2. Nginx的proxy_cache缓存功能
  3. 【IOC 控制反转】Android 事件依赖注入 ( 事件三要素 | 修饰注解的注解 | 事件依赖注入步骤 )
  4. 对typedef void (*sighandler_t)(int)的理解(声明了一种类型:sighandler_t)
  5. Runloop - 运行循环
  6. NumPy基础入门学习
  7. 贯穿你一生的14条社会生计
  8. 【区块链基础知识系列】 第6课 区块链之分片技术(sharding)-区块链扩容问题的良方
  9. 手机上的机器学习资源!Github标星过万的吴恩达机器学习、深度学习课程笔记,《统计学习方法》代码实现!...
  10. ipoo3可以用鸿蒙,iqooneo3支持无线充电吗_iqooneo3可以无线充电吗
  11. 把类成员改成指针_如果类中存在管理其他类对象的指针,通过析构函数释放它们...
  12. SESSIONS.ser 的问题
  13. 多品类适合电商美工收藏|品质页面PSD模板
  14. 让你提前认识软件开发(14):程序中的算法
  15. wifi卡慢延迟高_120平套三没网线,吃鸡延迟只有20ms,网件Orbi RBK50路由真香
  16. easyui datagrid一般创建模板
  17. matlab mac问题,mac版的matlab出现问题,有大神帮忙看一下吗
  18. 如何使用计算机打勾,如何用电脑在方框里面打勾
  19. Win11文件资源管理器有明显卡顿,微软承诺在2022年提高性能
  20. yaourt -S mysql_Yaourt 已死!在 Arch 上使用这些替代品

热门文章

  1. crossover linux 中文乱码,解决CrossOver下TM2013的中文乱码问题
  2. Kali Linux安装mysql-sniffer
  3. 物理卷,卷组,逻辑卷
  4. IDEA中新建项目名称爆红及不同颜色的意思
  5. 记录生活中的发现和感悟
  6. 目录遍历工具DotDotPwn安装使用
  7. jQuery使用插件dotdotdot.js实现段落溢出显示省略号
  8. 解决联想小新电脑蓝牙不能用
  9. WEB-前端学习day5
  10. [笔记][总结] MIT线性代数 Gilbert Strang 矩阵运算