在Android Studio 和 Eclipse 的 git 插件操作 "代码提交"以及"代码冲突"

转载 2015年07月09日 10:18:15
   

面向对象:曾经使用过SVN的同学。

(因为Git 它 可以说是双重的SVN (本地一个服务器,远程一个服务器)),提交代码要有两次步骤,先提交到本地服务器,再把本地服务器在提交到远程服务器。

所以连SVN的同学都没有使用过就好好使用一下SVN吧。

a1.代码更新。

在SVN中操作,我们要提交已经修改过的代码前,一定会记住。

"先更新,在提交" (不然你的小伙伴的代码就被你全覆盖了,然后你的小伙伴就会躲在公司墙角画圈圈了)

所以在Git里面操作。也是这样的。不过就多了一个步骤,就是 先更新 "远程服务器 --> 本地服务器",再进行 更新 " 本地服务器 --> 本地代码"。

我们还是上图吧。

Eclipse的操作就是:

1.指向代表的意思是只更新 "远程服务器 --> 本地服务器" 简称(Fetch)

当你更新后,你当前更新的项目与Git Repositories都会有类似一个向下的箭头,这代表“远程服务器”有东西更新到你的“本地服务器 ”,具体数量就是箭头隔壁的数字

2.指向代表的意思是 "远程服务器 --> 本地服务器" 与 " 本地服务器 --> 本地代码" 都执行  简称(Pull)

(当然有先后顺序的,先 "远程服务器 --> 本地服务器" 后 " 本地服务器 --> 本地代码")

这个操作其实是面向懒人把Git当成SVN使用,一步更新,官方也是不推荐这样做,因为这样,你本地代码,可能一下子代码冲突很多,给开发人员带来很多不便。

所以还是老实点,一步步来更新吧。

而在Android Studio的操作就是:

1.不知道怎么回事,在Android Studio就没有两步更新的操作,只有上面两个箭头的操作,都是直接把"远程服务器 --> 本地服务器" 与 " 本地服务器 --> 本地代码"  都执行了,

所以一更新完,你就等着去解决冲突吧。

a2.说完更新,接着说提交代码

其实经过刚才的更新讲解后,小伙伴们都知道"远程服务器 --> 本地服务器" 与 " 本地服务器 --> 本地代码" 的关系了,

所以提交代码实质上都要走这样的操作 " 本地代码 --> 本地服务器"  "本地服务器 --> 远程服务器" 

还是上图吧!

其实小伙伴就记住两个词就好了。

Commit : " 本地代码 --> 本地服务器"

Push :  "本地服务器 --> 远程服务器" 

Eclipse的操作就是:

1.从上面的图中看到,在Git的作出修改,会有一个箭头指向。

然后你右键项目又好,右键箭头文件也好。都是执行commit操作。

去到commit界面

Git 的Commit有种强迫症,一定要你打注释,不然不给你提交。

当你敲入 Commit Message后,Commit 与 Commit and Push 就会可点击了

Commit只是提交到 "本地服务器" 

Commit and Push 就两步都会做( " 本地代码 --> 本地服务器"  "本地服务器 --> 远程服务器" 有先后顺序,我下次不说了)

后面我就不写了。因为后面的都是敲账号和密码,如果你第一次 Push 代码 的话,才需要敲。

通常 Push  不了,无非就两个问题。

第一。你代码冲突还没有解决,一会 “代码冲突” 说具体讲解

第二。就是可恶的网络问题。(同学。这个我可帮不了你了)

其他的,我暂时没有遇到

而在Android Studio的操作就是:

具体与Eclipse的一样差不多,

就是Git  Repositories 变成

通过这里你可以知道你的修改的代码Push 了没有

然后。

接着还是那些填账号密码的操作,就不说了。

b 说说代码冲突吧。

 

1.先说Eclipse吧:

如果你是先修改完代码还没有commit,在执行Fetch,那你还没有feel到代码冲突。

I.只要你commit到本地服务器,IDE编译器就自动告诉你,已经冲突,要求你立刻解决。

II.如果你比较任性的话。直接想Commit And Push, IDE编译器也会很任性的回复你这样的图

拒绝你Push,说你还有问题没有解决。

但是你已经Commit了,但是又无法Push,

这是你应该要执行一下 Pull ,把 刚才Fetch 的代码植入"本地代码",这时IDE编译器才自动告诉你,已经冲突,要求你立刻解决。

并且把冲突文件标记为一个双向箭头

如图

如果你现在还想执意Push代码,得到的就是下图:

Repository state : Conflicts(简单意思就说:大哥,代码冲突啊,解决后,再提交吧)

然后,你解决后,保存,发现,那个文件还是像下图的那样,无法提交。

这时,应该

执行这样“Add to Index ”的操作,告诉IDE编译器你已经解决冲突了,如下图:

现在你就可以去Commit 也好,Commit And Push 也好,IDE编译器都会通过的(其实告诉你。去吧,骚年!)

2.Android Studio在 在更新代码时,

如果按工具栏的更新图标的话,如果有冲突时 就强制性让你去解决冲突。出现下图

通过点击Merge能清楚知道,你的代码,解决后冲突的代码,服务器的代码

解决后冲突的代码直接覆盖你的本地代码。(或者你点击Close,然后冲突的代码直接跳在你的本地代码,让你在本地代码修改。)

解决完冲突后,就可以Commit和Push了。比Eclipse方便一点点。

eclipse使用git插件踩过的坑-如何解决冲突(一)

第一次使用git,突然觉得很新奇,但是由于git是个新东西,自己也不熟悉,所以觉得有点坑。不说废话了,直接入正题,相信大家用svn都用的很熟,对于svn中代码的冲突解决的话也是很好解决的,update...
  • wagnteng
  • wagnteng
  • 2016年03月30日 16:46
  • 4105

eclipse EGit 合并代码处理冲突并提交代码

1.普通提交:在项目上右键:Team->commit,提交更改;然后右键:Team->remote->push推送代码到服务器。完成代码提交,然而一般不会这么顺利。2.远程代码库发生更改在你提交之前可...
  • zzl1243976730
  • zzl1243976730
  • 2016年11月16日 10:11
  • 1977

解决android studio 中SVN和git冲突 无法提交代码

android studio中断开SVN连接,并彻底清理项目中的.svn文件 这是一片转载的文章~~~ 项目中遇到过,从之前SVN管理的项目,现在要把 其中的一个module A放到新的项...
  • ccj659
  • ccj659
  • 2017年07月01日 12:15
  • 543

android studio 代码提交及冲突解决

在使用git和同事协同合作的时候,难免会遇到同时修改一个类甚至一行代码的情况,代码冲突会时常发生,解决方法记录下,以免忘了。 1.代码提交流程: 应该是本地commit(只选择commit...
  • u010927932
  • u010927932
  • 2016年03月18日 15:01
  • 960

Eclipse上安装GIT插件及首次上传代码

一、Eclipse上安装Git插件EGit         Eclipse的版本eclipse-Java-helios-SR2-win32.zip(在Eclipse3.3版本找不到对应的 EGit...
  • bfboys
  • bfboys
  • 2016年09月14日 13:47
  • 659

Eclipse git插件更新某个本地冲突文件

错误信息: org.eclipse.jgit.api.errors.CheckoutConflictException: Checkout conflict with files:  taotao...
  • lbr2008
  • lbr2008
  • 2017年12月01日 22:21
  • 210

android studio中用git提交到本地的代码怎么撤回?

1. 前言 在开发中, 有时在提交代码commit后, 还没push之前, 图片想撤回, 改怎么办, 其实很简单.2. 方法 右击项目 > 选择git > 选择Repository选项 >...
  • sinat_28891771
  • sinat_28891771
  • 2017年06月14日 17:37
  • 1172

如何解决git提交代码冲突

当我们使用git提交代码时,别人可能也同时修改了我们修改的文件,但是别人的先合入到配置库里边,这样当我们的提交要合入时,就会产生冲突,可以使用以下步骤来解决冲突: (1) git rebase   ...
  • lixiaojie1012
  • lixiaojie1012
  • 2014年05月04日 20:23
  • 2245

Android studio下将项目代码上传至github包括更新,同步,创建依赖

一、开篇 本文讲如何使用Android Studio将项目上传到github,虽然讲上传github的文章很多,但是大部分都是使用Git Bash命令行,虽然效率高些,但是有点麻烦,而且AS已经为我们...
  • mingtianguohou100
  • mingtianguohou100
  • 2017年01月24日 15:15
  • 867

正确使用git避免提交冲突

前几年自己用过一段时间的git(原来是使用bzr,后来换成git),都是当作个人代码备份工具,没有涉及多人提交代码到中央版本库。 两个月前,我们把原来的svn版本管理换成了git,这两天...
  • conconbenben
  • conconbenben
  • 2014年04月22日 16:39
  • 2376
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在Android Studio 和 Eclipse 的 git 插件操作 "代码提交"以及"代码冲突"
举报原因:
原因补充:

(最多只允许输入30个字)