git常用需求

git本身是一个VCS,为我们提供了管理版本的路径,其branch的特性又提供了多人合作开发的可能性,个人认为本地的git操作主要分为以下几个

  • 自github clone仓库
  • 自github更新本地git的代码(pull)
  • 添加修改到本地git(add,commit)
  • 提交到github
  • 分支相关操作(分支合并,切分支)
  • 版本回退

首先关注一下本地git修改的相关操作,也就是AS可以做到的本地操作

自github clone仓库

image.pngimage.png
通过上述方法可以将github仓库克隆到本地
image.png
点击github可以检查目标用户的所有仓库,可以选择以进行clone

本地建立git仓库

image.pngimage.png
点击import into Version Control之后点击Create Git Repository,选中本地项目目录,就可以建立本地git仓库,但是代码并没有add到本地之中。
image.png
这很合理,因为我们可能有设置.gitgnore的需求。就这样,本地git仓库就建立好了

add和commit到本地git仓库之中

gitgnore的设置

这里名为.gitgnore的文件的作用是将其中配置的路径下的文件在add的时候进行忽略,即将不想要加入缓存的文件写在这个目录中就可以

为什么需要多个.gitgnore文件?我问了隔壁毛sir,他说一个.gitgnore文件也是可以实现需求的,但是如果在每一个目录下都设置.githnore文件,管理自己目录下的文件,会更有层次感。 如果我在高层次的目录的.gitgnore的文件中没有配置忽略某一个文件,但是在更接近它的底层目录下配置了这个文件,这个文件仍然会被忽略,相较于只靠一个文件进行配置,后者更有一种分而治之的效果。

添加文件到.gitgnore的方法很多,其中比较直观的方法是点击git->Add to .gitgnore ->想要的.gitgnore文件,就会将当前打开的文件添加到.gitgnore
image.pngimage.png
也可以在.gitgnore中手写

add到本地仓库

image.pngimage.png
分别是add全部的文件以及add某一个文件的方法(上方控制栏VCS调出add以及右键某一个文件调用add)

commit到本地仓库

点击上方控制栏的commit按钮
image.png
之后会召唤出如下界面,上方红色方框处可以书写commit信息,下方红色方框处展示了代码的变化
image.png
蓝色箭头所示处是是否提交此处的变化,图示情况为添加此改变,点击一下之后将变为不添加当前改变
image.png
在上面的方框内可以修改作者信息(不填写的话默认为github账号以及用户名),下方可以选择在commit之前整理代码或者整理相关引用

TIP: 不同文件名的颜色的含义

  • 红色:表示当前文件并未被add到缓存中
  • 绿色:表示当前文件已经被修改,但是这些修改还没有被add
  • 蓝色:表示当前文件已经被add,但是还没有被commit
  • 白色:表示当前文件已经被commit到了本地git仓库中

Android Studio内部进行分支操作

查看当前分支以及提交到远程仓库

Android Studio内部可以看到本地分支以及远程分支,查看当前分支相关信息的方法为:
image.pngimage.pngimage.png
如果本地分支中出现一个向上的箭头,就表明本地有了相较于上次pul的新的commit记录,也就是说有了新的东西可以push到远程仓库,可以选择在这里进行push操作。在Android中不能在远程仓库新建分支,但是可以选择提交的目标分支

分支间的Merge

image.pngimage.png
选中某一个分支,然后点击此分支,最后选择与当前分支(本地分支)进行比较或者merge,merge的时候会进入到一个图形界面,会相对直观的展示两个不同分支之间的区别,可以使得merge操作变得更加直观
点击下图箭头处就可以accept相关的代码
image.png