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 //将代码推送的远程仓库中
  • 相关阅读:
    c#devexpres窗体划分 以及panelcontrol 相关操作
    c# 线程启动while(true) 死循环,里边的return导致线程退出情况,查错
    C# 解决SharpSvn启动窗口报错 Unable to connect to a repository at URL 'svn://....'
    Svn启动窗口报错 Could not load file or assembly 'SharpSvn.dll' or one of its
    c# sharpsvn 客户端开发总结
    sharpsvn 继续,解决文件locked 问题,
    c# sharpsvn 客户端开发测试
    c# sharpsvn 客户端开发总结
    SharpSvn 调用在运行时提示加载程序集出错,或有依赖项
    RibbonControl 工具栏上的一些基本操作
  • 原文地址:https://www.cnblogs.com/Can-daydayup/p/13961931.html
Copyright © 2011-2022 走看看