zoukankan      html  css  js  c++  java
  • 使用git处理github中提交有冲突的pull request

    前言:

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

    github中的大概命令合并指令

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

    下载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 //将代码推送的远程仓库中
  • 相关阅读:
    Unicode下CString(wchar_t)转换为 char*
    安装程序制作(转)
    STL头文件
    杭电2043 请大神帮我看看哪错了?谢谢了!
    杭电2046
    杭电2044
    实现winform中的treeview控件部分节点显示checkbox,部分节点不显示checkbox的功能
    实现将sqlserver2000的多张表导出到access,并压缩,并导入压缩的access文件到sqlserver2000
    从Excel中指定的sheet名称或索引读取数据到DataTable,以便用户更改sheet名称后仍能读取数据
    combobox控件实现多列显示
  • 原文地址:https://www.cnblogs.com/Can-daydayup/p/13961931.html
Copyright © 2011-2022 走看看