Android Studio配置Git及Git文件状态说明

Studio配置Git还是比较简单的,麻烦的是可能中间出现各种。如果你想了解或感兴趣,请往下看。

首先你得下载Git客户端,网址:。

根据需要下载相应的版本,并安装。然后在Android Studio中指定git.exe,点击“Test”,成功则会弹出以下提示。

udast

由于我用的是Android Studio 2.0 Preview,根本不存在“Enable Version Control Integration”提示,害我找了半天 T~T。其实有个类似的操作。

udast

就是这个“Create Git Repository”,不然你会一直得到“…such that source detected in git but Unregistered Vcs root detected”提示。以下图示中unregistered roots上面的两个工程就完成了配置。

udast

完成了这一步,往下就是为git添加remote了。我使用开源中国在线代码托管,先得到一个地址:https://git.oschina.net/***.git.

打开git base,并切换到的根目录,输入以下命令

git remote add origin https://git.oschina.net/***.git

顺利的话这一步就完成了。

然后在Android Studio中进行git add操作。

udast

接着就是commit directory,最后push代码到远程仓库。

udast

至此,一次提交结束。

默认情况下,Android Studio的会有这几个文件夹:build, libs, src. 但每次提交代码到git,都会提示build文件夹中的众多需要提交的文件,其实我们根本不关心build文件夹中的文件改动情况。怎么办呢?利用.gitignore把它过滤掉。

在工程根目录建立.gitignore文件,然后添加

build

就这么简单!如果你想过滤其它文件,添加相应的规则就可以了。

保存.gitignore文件后,还需要运行一下以下几个命令,以便把.gitignore文件提交到git上。

git rm -r --cached .git add .git commit -m "添加.gitignore文件"git push origin master

“git rm -r — cached 某个目录”,这个命令有点狠,会把目标目录清空,–cached .(注意:此处表示所有的文件,有一个点);”git add .”,再把所有的文件重新加入缓存(stages new and modified, without deleted)。如果你当前其它文件已经是最新且已经push到远程仓库,完全可以用add .gitignore了事。

此外,还可以用以下命令代替git rm -r –cached .

git add -A

表示stages All。新手可能不太明白。好,我从git中的三种文件状态及其转换说起。

———————————————————————————————

华丽的分隔线

———————————————————————————————

1、首先,我在git对应的工程目录下创建一个test.txt,并输入以下字符串并保存。

Hello

2、打开git bash,输入命令git status,查看文件状态

udast

3、按照提示,使用命令git add test.txt,把这个文件加入到git的快照中,再次git status

udast

4、打开test.txt,向其中加入些内容,保存。

Helloworld

其实就多了world这个字符串。再次用git status查看文件状态。

udast

除了之前的“Changes to be committed”状态,还多了“Changes not staged for commit”状态,表明文件已经被修改,但修改还没有放入暂存区域,也就是没生成快照。如果此时进行commit操作,只会提交”Hello”,忽略“world”。

根据提示,如果想把最新的修改“Hello world”提交到仓库,需要再次使用命令git add test.txt;如果想撤销修改,即只想提交“Hello”,可以使用git checkout — test.txt,再次git status,则可以看到状态又改变了。

udast

总结:所以,在文件未进行commit操作之前,存在三种状态:Untracked files, Changes not staged for commit, Changes to be committed. 每种状态可以随意转换。

——————————————————————————————————–

题外话

——————————————————————————————————–

在git的后续版本中,添加了git stage作为git add的一个同义词,这样在语义上更符合上面的Changes not staged for commit。为什么要增加stage呢?

1、分批提交,降低commit的粒度。

2、文件快照,便于回退。

如果一次提交过多文件,对后续的回滚或跟进无疑非常不利,对的定位也不便,体验过估计清楚的。比如你做了两个功能A和B,对应的文件修改分别是a1., a2.; b1., b2.,提交时就可以这样:

git stage a1. a2.javagit commit -m "功能A"
git stage b1.java b2.javagit commit -m "功能B"

同时,每次修改后stage,任何时刻,都可以回到上一次staged的状态:

git checkout -- test.txt

如果想从stage中删除,则使用reset

git reset test.txt

这个命令就是git stage test.txt的反操作。

更多Android Studio相关内容可以看看以下的有用链接: 

在 

Android Studio 2.0中的模拟器已提速50倍 

Ubuntu 12.04(64位)安装Android Studio 全过程  

Android Studio v0.1尝鲜  

Android Studio使用教程  

Android Studio开发指南

Android Studio设置主题 和 不支持中文的解决方法  

Android Studio 下载安装以及不能打开的解决办法  

Android Studio安装使用图文教程  

Ubuntu上安装Android Studio 1.3(谷歌 Android IDE 开发)   

Android Studio 的详细介绍: 

转载自:https://www.linuxidc.com/Linux/2016-01/127199.htm

声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 智乐兔
转载请注明:转自《Android Studio配置Git及Git文件状态说明
本文地址:https://www.zhiletu.com/archives-5601.html
关注公众号:智乐兔

赞赏

wechat pay微信赞赏alipay pay支付宝赞赏

上一篇
下一篇

相关文章

在线留言

你必须 登录后 才能留言!