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

面向对象:曾经使用过SVN的同窗。服务器

(由于Git 它 能够说是双重的SVN (本地一个服务器,远程一个服务器)),提交代码要有两次步骤,先提交到本地服务器,再把本地服务器在提交到远程服务器。网络

因此连SVN的同窗都没有使用过就好好使用一下SVN吧。工具

a1.代码更新。对象

在SVN中操做,咱们要提交已经修改过的代码前,必定会记住。blog

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

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

咱们仍是上图吧。编译器

Eclipse的操做就是:it

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

当你更新后,你当前更新的项目与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方便一点点。

相关文章
相关标签/搜索