git pull沖突解決

场景:
用户UserA修改了文件File1,用户UserB也修改了文件File1并成功merge到了服务器上,而UserA和UserB改动了同一个代码块,当UserA拉取代码时git无法merge此改动,就会出现如下错误提示:

$ git pull
Updating 88b0e2d..af4b152
error: Your local changes to the following files would be overwritten by merge:
xxxxx/TuningPool.java
Please, commit your changes or stash them before you can merge.
Aborting

 

1、先将本地修改存储起来
Git提供了一个stash功能,可以把当前工作现场“储藏”起来,等以后恢复现场后继续工作
$ git stash

用git stash list可以看到保存的信息,其中stash@{0}就是刚才保存的标记。
$ git stash list
stash@{0}: WIP on dev: 88b0e2d Control the thread number


2、pull内容
暂存了本地修改之后,就可以pull了。
$ git pull


3、还原暂存的内容
工作现场还在,Git把stash内容存在某个地方了,但是需要恢复一下,有两个辦法:
一是用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;
另一种方式是用git stash pop,恢复的同时把stash内容也删了。
你可以多次stash,恢复的时候,先用git stash list查看,然后恢复指定的stash,用命令:

$ git stash pop stash@{0}
系统提示如下类似的信息:

Auto-merging xxxxx/TuningPool.java
CONFLICT (content): Merge conflict in xxxxx/TuningPool.java

意思就是系统自动合并修改的内容,但是其中有冲突,需要解决其中的冲突。


4、解决文件中冲突的的部分

 

更多相关文章
一周排行
  • #include <stdio.h> int main() { int num,a,b,c; for(num=100;num<=999;num++) { a=num/100; b=(num-a*10 ...
  • Android自定義TTF字體
    前言: 在Android Design中一个设计手册.在设计手册中有常用的UI图标,图标大 ...
  • Windows 2008 Server在安全上做了重大调整使用过去的老路子行不通,Gethash可能根本运行不了.本人通过实践找到一种组合的破解方法.下面是工作思路和流程: 1.获取shell并提权.在服务器上添加一 ...
  • 很多时候我们会有这样的情况,开发环境和测试环境中的配置文件是不一样的,最明显的就是数据库连接串,这样,每次我们发布一个测试版本,都要手动去修改一下配置文件,是不是很麻烦的说.其实利用web.config中的confi
  • 渣渣小本求職複習之路每天一博客系列——UnixLinux入門(3)
    前情回顾:在昨天的博客里,我们先是介绍了命令行和联机幫助页,然后又了解了一下什么是用户和组
  • 我所维护的一家以外贸进出口为主要业务的小型公司部署了一套 Windows Small Business Server 2003,其中 Exchange Server 是该公司的主要业务系统,用于与国外客户进行业务往来
  • 最近因工作需要,研究批量tcp port ping.在网上看到一个测试单个IP的脚本,遂将脚本改造了一下,实现批量的tcpportping.这个脚本ping目标IP和端口6次,去掉最大值,然后取5次的平均值. 共3个
  • 总之通用的法则,google:"XxxName documentation" 例如,如果要查看JSTL的reference manual,google:jstl doc即可,oracle官网有ht ...
  • 


    		    VMware vSphere ESX 遷移到 ESXI 指南
    VMware vSphere5 就要GA了.自然会有一大批业务做升级.ESXI4.1之后升 ...
  •   题目传送门 1 /* 2 题意:求一个点为根节点,使得到其他所有点的距离最短,是有向边,反向的距离+1 3 树形DP:首先假设1为根节点,自下而上计算dp[1](根节点到其他点的距离),然后再从1开始,自上而下计