前言:

  为什么要写这篇文章,因为前段时间有一个开源的github中的项目有一个朋友提交了一个pr看了下是帮忙优化了下代码(十分感谢这位网友)。但是他提交的pr刚好和我的项目有许多的冲突导致无法自动合并,在github中提示只能使用命令行指令进行合并,因为这种情况处理的比较少为了以后方便使用在这里记录一下。

github中的大概命令合并指令

1、首先我们需要下载一个git分布式管理工具

现在链接地址:https://git-scm.com/

2、然后我们需要clone下我们的项目

git clone sgit@github.com:YSGStudyHards/NPOI-ExportWordAndExcel-ImportExcelData.git(ssh项目链接)

3、创建并切换到该分支,并同步到master中

git checkout -b 创建的分支名 master

使用git branch查看当前所属分支

4、拉取有冲突的pr到该分支中

git pull https//github.com/某人的/某项目的.git master  

github中的命令语句

git pull git://github.com/hongbobaoer/NPOI-ExportWordAndExcel-ImportExcelData.git 20201109

5、直接打开冲突文件手动解决冲突

当项目拉取下来以后,我们就需要解决有冲突的文件信息了  

由下面的冲突文件中的冲突内容我们了解到:
<<<<<<< HEAD
6月19日 pingrixuexilianxi添加了内容
=======
6月18日 pingrixuexilianxi2修改了这个文件哦
>>>>>>> a8284fd41903c54212d1105a6feb6c57292e07b5
<<<<<<< HEAD到 =======里面的【6月19日 pingrixuexilianxi添加了内容】是自己刚才的Commit提交的内容
=======到 >>>>>>> a8284fd41903c54212d1105a6feb6c57292e07b5里面的【6月18日 pingrixuexilianxi2修改了这个文件哦】是远程代码库更新的内容(即为pingrixuexilianxi2本地代码库推送修改内容)。

手动冲突解决方法

根据项目需求删除不需要的代码就行了,假如都需要的话我们只需要把 <<<<<<< HEAD=======     >>>>>>> a8284fd41903c54212d1105a6feb6c57292e07b5都删掉冲突就解决了(注意,在项目中最后这些符号都不能存在,否则可能会报异常)。

或者可以使用git可视化管理工具(推荐)

原因:由于有些人使用代码合并比较生疏,为了避免出错推荐使用sourcetree进行解决冲突合并。

详细使用sourcetree地址参考:https://www.cnblogs.com/Can-daydayup/p/13128633.html

6、合并更改并在GitHub上更新

注意:这里是没有使用可视化工具合并的时候才需要自己使用代码去执行合并,提交,更新操作!

git commit -a //把修改提交到新建的分支上,会提示你成功merge本地代码到这个人的代码库

git checkout master //切换到自己的主分支上

git merge 创建的分支名 //将新建的分支合并到自己的分支上

git push origin master //将代码推送的远程仓库中

使用git处理github中提交有冲突的pull request的更多相关文章

  1. Github 中提交项目到自己仓库的 gh-pages 分支

    Github 中提交项目到自己仓库的gh-pages分支 cd cnblogs-theme/ git init git remote add origin git@github.com:hglibin ...

  2. 使用git向github中添加项目并更新(备忘录)

    今天使用Git&github&ST3时,发现ST3不仅是git插件不能push成功,使用sublimegit插件也不行. 可能是没有掌握sublimegit的使用技巧,有待后续继续摸索 ...

  3. 在eclipse上使用github,向github中提交项目

    1.下载egit插件 打开Eclipse,git需要eclipse授权,通过网页是无法下载egit的安装包的.在菜单栏依次打开eclipse→help→install new software→add ...

  4. github小技巧之Creating a pull request 创建 pull 请求

    创建一个 pull 请求是为了协作更改存储库.这些变化会产生一个分支,它确保主分支保持干净整洁. 与commits提交是不同的,提交是fork之后的一种操作. 在你可以打开一个 pull 请求之前,您 ...

  5. 如何在github上递交高质量的pull request

    开源的一大乐趣就是任何人都可以参与其中.试想下一个流行的项目就有你贡献的代码,是一件多么爽的事情!你可以帮助项目健康发展,添加你希望添加的功能,以及修复你发现的BUG. 作为全球最大的开源社区GitH ...

  6. github上如何合并别人的pull request

    https://github.com/Epix37/Hearthstone-Deck-Tracker/issues/1391 I fetch the code from your repository ...

  7. Pull Request的正确打开方式(如何在GitHub上贡献开源项目)

    Pull Request的正确打开方式(如何在GitHub上贡献开源项目) GitHub的官方帮助如下: Fork A Repo: https://help.github.com/articles/f ...

  8. git与github

    Git-版本控制,多人协作,分布式: Github-开源项目,远程仓库: 我在github上建立了一个仓库 https://github.com/abcd/2016ife: 现在我要把它下载到本地: ...

  9. 适合小白的大白话讲解--->Git与Github的区别

    本文由 伯乐在线 - 听风 翻译,艾凌风 校稿.未经许可,禁止转载!英文出处:Red Radger.欢迎加入翻译组. 本文旨在使用通俗易懂的文字,讲解版本控制背后的理论,以便你能对程序员们如何工作有个 ...

随机推荐

  1. tmpwatch命令清除旧文件

    我们知道系统里面常常会有一些忘记删除的长时间不用而且确实没有用处的文件,如果不去处理,这些无用的文件会越来越多,浪费许多系统资源.在不知道文件名的情况下,很难去检查某一目录下到底是哪些文件长时间没有被 ...

  2. rxjs入门5之创建数据流

    一 创建同步数据流 1.creat Observable.create = function (subscribe) { return new Observable(subscribe); }; 2. ...

  3. 【Flutter 混合开发】嵌入原生View-Android

    Flutter 混合开发系列 包含如下: 嵌入原生View-Android 嵌入原生View-IOS 与原生通信-MethodChannel 与原生通信-BasicMessageChannel 与原生 ...

  4. OpenCV Java Tutorials- Camera Calibration

    2020-10-10原文地址:https://opencv-java-tutorials.readthedocs.io/en/latest/09-camera-calibration.html#id1 ...

  5. C#使用RabbitMq队列(Sample,Work,Fanout,Direct等模式的简单使用)

    1:RabbitMQ是个啥?(专业术语参考自网络) RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件). RabbitMQ服务器是用Erlang语言编写的, ...

  6. Python3.7有什么新变化

    https://docs.python.org/zh-cn/3/whatsnew/3.7.html

  7. 如何使用懒加载 - umi

    .umirc.js文件 plugins: [       dynamicImport: true,

  8. linux(centos8):firewalld的运行时日志配置

    一,firewalld配置日志的用途: 在生产环境中,firewalld的默认配置是不记录日志 我们通过日志记录下防火墙过滤时拒绝的非法ip, 可以主动把这些有攻击性的ip加入到黑名单, 防患于未然 ...

  9. DateDiff() 方法语法 T-SQL语法

    表达式DateDiff(timeinterval,date1,date2 [, firstdayofweek [, firstweekofyear]]) 允许数据类型: timeinterval 表示 ...

  10. 如何使用性能分析工具定位SQL执行慢的原因?

    但实际上 SQL 执行起来可能还是很慢,那么到底从哪里定位 SQL 查询慢的问题呢?是索引设计的问题?服务器参数配置的问题?还是需要增加缓存的问题呢?性能分析来入手分析,定位导致 SQL 执行慢的原因 ...