• 如何解决本地仓库和远程仓库的冲突(Conflict)


    Background:

      我有一个github仓库管理我的代码,我将这个仓库的代码clone到我的工作电脑和私人电脑本地方便我上班和在家时都可以对我的代码进行更新。

    一天,我在家修改过代码之后并未提交,我上班时做了在家已经做过,但是未提交的那部分代码的更新工作,在下班时我提交了我所做的修改。

    我下班回家之后,想review今天提交过的代码,发现执行 git status 命令总会有以下信息:

    git status
    On branch master
    Your branch is ahead of 'origin/master' by 4 commits.
      (use "git push" to publish your local commits)
    nothing to commit, working tree clean

    Workaround: 

    我然后执行了,

    bpan@5CG7022BM2 MINGW64 /d/GitRep/JIRA_Extensions (master)
    $ git fetch origin master
    From https://github.com/962720900/JiraExtensionFunctions
     * branch            master     -> FETCH_HEAD
    
    bpan@5CG7022BM2 MINGW64 /d/GitRep/JIRA_Extensions (master)
    $ git log -p master.. origin/master
    
    bpan@5CG7022BM2 MINGW64 /d/GitRep/JIRA_Extensions (master)
    $ git merge origin/master
    Already up-to-date.

    我查看本地文件并没有和远程仓库同步,

    然后我查了一些文档,更新远程仓库到本地的有以下两个方式,

    //方法一
    $ git fetch origin master //从远程的origin仓库的master分支下载代码到本地的origin master
    
    $ git log -p master.. origin/master//比较本地的仓库和远程参考的区别
    
    $ git merge origin/master//把远程下载下来的代码合并到本地仓库,远程的和本地的合并
    
    //方法二
    $ git fetch origin master:temp //从远程的origin仓库的master分支下载到本地并新建一个分支temp
    
    $ git diff temp//比较master分支和temp分支的不同
    
    $ git merge temp//合并temp分支到master分支
    
    $ git branch -d temp//删除temp

    我也尝试了,也失败了,最有下面这个命令解决了这个问题,

    git reset --hard origin/master
    

      

  • 相关阅读:
    各种推荐资料汇总。。。
    不错的blog,做计算广告学的,还有机器学习的
    大数据建模,eBay的一个牛人
    factor graph和sum product和TrueSkill相关的两个blog,相当不错
    词云制作工具。。。
    CSS:nthchild选择器用法练习
    CSS控制表格隔行变色:nthchild()选择器
    CSS3calc()函数练习(制作响应式布局)
    CSS3boxsizing属性练习(borderbox设置padding和border不会改变width和height的值)
    CSS3clippath练习
  • 原文地址:https://www.cnblogs.com/revel171226/p/8579506.html
Copyright © 2020-2023  润新知