eclipse git push 冲突问题解决
原文地址:http://blog.sina.com.cn/s/blog_4dd787e40102uysg.html
Eclipse中Egit冲突解决
Git 作为进来最流行的分布式版本控制软件来说应用的十分广泛。EGit就是一款Eclipse上的Git插件。在使用Egit提交项目时,有时会产生冲突,需要对代码进行merge。这里对内容冲突的解决进行介绍。
内容冲突是指两个用户修改了同一个文件的同一块区域,git会报告内容冲突。
1. 产生内容冲突
我们原始文件内容如下所示:
有两个项目组同时对其进行修改:
1) GordonCoder将第三行中“System.out.println();”修改为“System.out.println(“Hello, GordonCoder”);”
2)Jiangpeizhao将第三行中“System.out.println();”修改为“System.out.println(“Hello, Jiangpeizhao”);”,
GordonCoder修改完文件后commit 并push,之后Jiangpeizhao进行修改并准备提交。
2. 提交修改
在项目上右击选择Team-Commit,在弹出对话框中填写“Commit message”并勾选需要提交的文件,点击“Commit and Push”。如果没有发生冲突,则提交正常;如果有冲突,则会填出下面的对话框“master:master[rejected – non-fast-foward]”:
此时在项目上右击选择Team-Synchronize Workspace
此时Eclipse界面如下,会跳到Team视图:
项目文件夹右侧有“↑1”和“↓1”,说明有一个未push的修改和一个未pull的修改。打开下面的History窗口,可以看到最上面的两条修改,一个由Jiangpeizhao提交,一个由Gordon提交。
此时产生冲突。
3. 解决冲突
首先,将修改从远程pull到本地,点击下图的小按钮:
点击后如下图所示:
其中”<<<<<<< HEAD”、”=======”、“>>>>>>> branch 'master' ofhttps://git.oschina.net/Jpz/SpringDemo2.git”直接的就是双方的修改。
右击项目,选择”merge tool”:
如果”merge tool”是灰色的,如下图所示:
那么可能是由于没有在本地进行Commit或者没有进行pull。
点击”merge tool”后弹出:
注意现在文件图标下的红箭头,这是冲突的标志。如果没有弹出这个对话框,那是因为Git设置的问题。选择Window-preference:
在弹出对话框中找到Team-Git,将Merge tool context设置为第一个选项”Prompt when starting tool”,点击OK:
在下面填出的对话框中
选择第二个选项,之后如下所示:
手动来解决冲突,在本例中将这一行改为“System.out.println(“Hello, everyone”);”修改完后保持(ctrl+s,呵呵)。
右击项目,选择”Add to git index”:
注意此时图标的变化。
4. 合并merge
右击项目,选择”Commit…”提交至本地,此时的提交便是合并:
弹出窗口如下:
点击“Commit”。如果是只有一个冲突,此时也可以直接点击“Commit and Push”
点击“Commit”后如下所示,注意箭头数:
此时解决一个冲突,如果冲突多,需要继续处理,就继续按以上步骤来。解决完后,点击”Push”:
最后如下所示:
点OK即可。
5. 查看history:
在java界视图,右击项目选择“team-show in history”,如下所示:
可以查看history:
关于Egit的其他操作课参考:
http://www.cnblogs.com/sinojelly/archive/2011/08/07/2130172.html
http://wiki.eclipse.org/EGit/User_Guide
eclipse git push 冲突问题解决相关推荐
- eclipse git提交冲突 checkout conflict with files
eclipse git提交冲突 checkout conflict with files 第一种:1.project右键-->team-->stashes-->stash chang ...
- eclipse git 解决冲突 解决 mergetool 不能使用问题
eclipse git 解决冲突 解决 mergetool 不能使用问题 参考文章: (1)eclipse git 解决冲突 解决 mergetool 不能使用问题 (2)https://www.cn ...
- git push 冲突
git commit -am "test 3" git pull 用自己的:git checkout --ours xxxx路径xxxx 用他人的:git checkout --t ...
- git am冲突问题解决方法
文章目录 1.git am出现冲突 2.git apply --reject合入不冲突部分,保留冲突部分 3.git status 查看状态 4.手动解决冲突,并删除*.rej文件,然后git add ...
- eclipse git 取远程代码_IDEA中的Git操作,看这一篇就够了!
大家在使用Git时,都会选择一种Git客户端,在IDEA中内置了这种客户端,可以让你不需要使用Git命令就可以方便地进行操作,本文将讲述IDEA中的一些常用Git操作. SpringBoot实战电商项 ...
- git解决冲突的方式
冲突1: 当你commit以后,在执行git pull –rebase的时候出现冲突,请按如下步骤解决: 1 找到冲突文件,解决冲突 2 执行git add xxx(xxx为冲突文件全路径) 3 执行 ...
- Git初学札记(四)————Git Push的常规操作与Pull冲突解决
目录 引言 Git命令行的远程Push EGit Push操作中的冲突问题 同步 工作区与本地库同步 工作区与远程库同步 图标 重点 引言 在团队开发当中,Git Push是多人协作环节中的最重要的一 ...
- git push代码时的‘git did not exit cleanly (exit code 1)‘问题解决
git push代码时的'git did not exit cleanly (exit code 1)'问题解决 参考文章: (1)git push代码时的'git did not exit clea ...
- 02_创建Git仓库,克隆仓库,git add,git commit,git push,git pull,同行冲突,不同行冲突的结局方案,git mergetool的使用
1 创建Git资源库,残酷目录信息 创建git资源库的命令: git init –bare 仓库名称 (其中-bare表示的意思是空的库的意思) 进入E:\software\repository\gi ...
最新文章
- 软件项目管理0718:读一页项目管理读书笔记
- 驱动学习 - 加载.卸载驱动
- 在java面向对象编程中_谈一谈你对封装_继承_多态概念的理解_Java新职篇:面向对象编程的3个原则是什么?...
- python计算数组元素的和_python中数组的运算
- 情人节集体撤档,《肥龙过江》改网播,线上首映会成为常态吗?
- mongodb和mysql的对比_Mongodb与mysql语法比较
- aop java 接口_Spring AOP实现接口验签
- matlab中找不到指定的模块,Matlab装好后启动提示找不到指定模块如何解决?很急...
- verifycode.php,php验证码|php图片验证码|php image.verifyCode.class.php
- 打破国外垄断,开发中国人自己的编程语言(1):编写解析表达式的计算器
- 计算机技术未来的研究热点,计算机科学前沿热点及发展趋势
- Less变量动态修改
- 计算机电缆对绞节距,耐高温双绞计算机电缆DJFFP2√厂家
- 三角形边长求高的c语言函数公式,各种三角形边长的计算公式-三角形三边公式...
- 再次领先全国,第一只波士顿机器狗落户上海,等你来撸
- 数字签密算法JPBC实现
- python scapy 抓包_Python3下基于Scapy库完成网卡抓包解析
- 广汉哪里可以学计算机,广汉的年轻人学门啥技术好找工作呢
- oracle中的Insert into
- winhex中判断+MBR+DBR+EBR方法