Rom开发中常用Git操作

其实平时做普通的程序开发,单人的话一般对版本控制的需求不是特别高,即使是人稍微多一点,有些时候使用U盘来拷贝代码效率会更高一些,当然了,现在常用的android studio里面有Github的插件,使用起来也相当方便,不过这是题外话了。

但是到Rom开发中,如果说不使用版本控制,那工作量真的不知道会多多少倍。

简而言之,Git大法好,于是mark一下我自己开发中比较常用的命令:

git status

  列出当前目录所有还没有被git管理的文件(说的通俗易懂即新增加的文件)和被git管理且被修改但还未提交(git commit)的文件(无论是否被add,它们会被分别列出)

  注:需要注意的有两点

  1,有些文件虽然在目录中,但是我们会选择将他移出git的管理,例如每次编译完源码后,有些文件里面的日期会被改变,但是将这些文件add并且commit是毫无意义并且会带来很多负面影响,例如不方便直接拉取commit之类,而一般我们将这样的文件或者目录添加进根目录下的.gitignore,在添加进.gitignore之后,git status将会忽略这些文件及目录。

  2,补充第一点,有时候你会发现有一个或者多个文件(或者目录)等待被add,但是他们是你想忽略的,于是你把他们添加进了.gitignore,但是这时候git status之后依然会有这些文件,这是因为这些文件并不是未被git管理的文件,所以git的缓存区已经有了它们的缓存,即使你修改了忽略规则,git仍然会检查到它们和缓存区的文件不同,所以仍然会将他们列出来。这个时候添加进.gitignore是没问题的,之后需要使用git rm --cached命令将缓存区的这些以前缓存过的同文件删除,然后你可以add并commit这些改动,之后他们就会遵守.gitignore的规则,不会再被git status列出了。

git add

  添加文件或者修改过的文件进入暂存区

git add .

  添加所有未被git管理以及修改过的文件进入暂存区,但不包括被删除的文件

git add -u

  添加所有未被git管理以及修改过的文件进入暂存区,但不包括未被git管理的文件

git add -A

  添加所有未被git管理以及修改过的文件进入暂存区

git commit

  提交当前暂存区中的所有内容,即被add的全部内容,一般使用git commit -m ''

  ps:''中填写的是该提交的备注或者说注释,简短一些,能明白这次改动修改了什么即可,方便自己或者其他人查看

gitk

  其实这玩意可能不算是git的命令,当然,它是随git一起被安装的,主要是一个图形化查看commit以及未被add或者未被commit的文件的修改的工具,不说了,一用即知,一般使用gitk &命令,在后台打开gitk,避免前台占用这个终端命令行。

git rm

  其实个人认为相当于rm之后add了该改动吧,结果是该文件被删除并且进入暂存区

git rm --cached

  前面有说到,将缓存区的该文件删除,并不会在本地删除该文件,当然,这次改动也会进入暂存区

git clone <where>

  克隆命令,将该地址的Git管理下的目录拷贝至当前目录

git remote add <name> <where>

  设置远程仓库别名及地址

git remote remove(rename) <name>

  移除(重命名)远程仓库

git remote -v

  查看所有远程分支的名称及远程地址

 

posted @ 2017-10-24 17:02  Qunter  阅读(136)  评论(0编辑  收藏  举报