zoukankan      html  css  js  c++  java
  • 如何解决本地仓库和远程仓库的冲突(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
    

      

  • 相关阅读:
    asp后台读id设置样式
    js,需要更多源字符
    列名无效
    asp,对待绑定数据加序号列(DataSet)
    ashx 绝对路径得到物理路径
    方法执行一次js
    小细节
    Spring oauth大致流程
    第六章 分支语句和逻辑运算符
    第七章 函数
  • 原文地址:https://www.cnblogs.com/revel171226/p/8579506.html
Copyright © 2011-2022 走看看