前言
提到git可视化管理工具,一般大家第一个想到的都是SourceTree。没错,如果说论功能的强大肯定要数SourceTree,不然也不会被广大开发者所推荐。但是SourceTree的使用对象是针对所有开发者,所以它不会显示在你的IDE中。这也就说明在你开发的时候,你没法办直观的看到你代码的状态。对于我们Android开发者开说,目前大部分人都使用AndroidStudio,然而在AndroidStudio(下文中简称AS)中就有这样一个可视化的git工具(Git integration)。
1、Git integration简介
Git integration是AS安装后就带有的一个插件,我们可以在Setting->Plugins中看到,如下图:
我们看到它已经8.1版本了,而且每次随着AS的发版更新,既然它一直在更新并且内置在AS中,我想我们没理由不去尝试使用一下。
2、Git integration的基本使用
第一步:我们从一个新建的项目开始,首先我们要开启它。如下图:
在AS的菜单栏中点击VCS选项卡,点击Enable Version Control Integration...选项,弹出选择使用哪种版本控制方式。如下图:
我们可以看到AS支持Git和SVN两种版本控制方式。好的,选择Git,点击OK。如果一些想知道这些操作具体是执行了哪个命令的话,大家可以点击AS底部的Version Control,选择Console,就可以看到具体执行的命令。如下图:
第二步:修改.gitignore文件
好的,此时我们就会看到当前项目已经创建了本地的仓库,项目中的文件就会展示不同的颜色,代表着不同的状态。如下图:
因为我们当前项目中的文件都还没添加到版本控制,所以展示的都是红色。我们还会看到一些事灰色的。那是因为我们一旦打开Git版本控制,默认会为我们创建了.gitignore文件,里面为我们已经添加了一些忽略文件。如下图:
然后我们按照自己的意愿去修改里面的配置,可以自由去定制想要忽略的文件。还有一个要注意的地方,就是对应每个module都会有一个单独的.gitignore文件。这里我们最好为每个单独的module进行单独的配置,这样是为了方便如果别人也引用这个module的时候就不需要再在自己的工程中对引用的这个module再进行忽略文件的添加。说白了,就是为了解耦。
第三步:添加文件到版本控制,提交到本地仓库
配置完忽略文件后,接着就要将文件添加到版本控制。如下图:
你也可以单独为每个文件或者文件夹进行添加操作。这里提醒一点,当我们平时开发中,当我们新创建一个文件的时候默认会弹出这样一个提示,如下图:
这个提示是询问我们是否要将新添加的文件加入到版本控制中,这个一般是要点击yes的。如果你新建的是一个自己的不需要提交到服务器的文件,你可以选择no。选择no,该文件就会显示红色,就是当前文件没有加入版本控制。当然之后你也可以自己手动再添加到版本控制中。
添加完成之后,如下图:
绿色,标识该文件添加到版本控制了,但是没有提交到本地版本库。
点击该按钮,提交本地修改。
填写提交信息,点击右下角按钮。这里工具给我们提供了三个功能:1.commit 提交到本地仓库;2.commit and Push 提交到本地仓库并推送到远程;3.创建本次的diff文件
这里我们一般使用2的功能,提交到本地并推送服务器。点击提交,因为这个是我们新建的一个工程,所以会弹出这样一个页面:
因为我们本地仓库从未关联过任何远程仓库,所以这里我们需要手动去关联一下远程仓库。点击Define remote。如下图:
填上我们在远程仓库的地址(新建的仓库地址)。点击ok。
这样就推送了远程的仓库了。这样我们就把第一次本地创建的工程成功推送到远程了。那我们其它同事就可以把这份新的工程check下来了,check新的工程这里就不讲了。
这里说一下拉取更新,因为git的更新和svn还是有很大的区别的。其中最重要的一个是git多了一个文件的staged状态,这个类似暂存状态。就是因为这个状态在我们拉取更新的时候经常会出问题,如果你的文件没有暂存,而直接远程更新时,本地的所有未暂存的代码都将被覆盖。这点