1.在使用git的过程中,默认是把当前目录下的所有文件都当做了代码仓库,但是有些文件属于每次编译都会自动生成的,比如android项目目录下的bin目录与gen目录。
那么这些每次编译都会生成的文件是否可以不提交到代码仓库呢?
很明显是可以的。通过配置.gitignore文件就可以达到这样的效果。
比如排除android项目demo下的gen与bin目录。
在demo项目的根目录下新建一个.gitignore文件,然后再里面添加2行:
bin/
gen/
这样在以后通过add 与 commit提交代码的时候 git就会找到.gitignore文件把bin与gen目录下的所有文件都忽略掉。
2.查看修改的内容
在使用git的过程当中,会提交很多次代码。如果你想查看你本次修改的代码与上次提交的代码的差别。可以通过status命令来查看
git status
如果没有修改任何代码,它会提示nothing to commit, working directory clean.
如果修改了部分代码,它显示下面的提示:
在modified: 后面会显示出具体修改了哪些文件。
这时候 你可以通过diff命令具体的查看 更改内容:
git diff
上图中的绿色的 +// git test 就是本地修改时添加的一段代码
后面 boolean ServiceWork;//一堆乱码 ,可见对中文的支持不是很好。
其中 +部分代表添加的部分 -部分代表删除的部分 上面的例子中只有+的部分。
3. 撤销还没有add的修改
接着2说,当你修改本地代码,然后执行git status时,你发现它还有一段提示
橙色部分框起来的。这部分的大意很简单,就是本地的代码还没有commit,你可以通过add 命令去commit修改的文件,也可以通过checkout命令去取消修改。
这里就提到了checkout命令了。
通过chekout命令可以撤销还没有add的修改。
git checkout directory
后面得directory 就是你想要撤销修改文件的路径。
撤销之后,你在通过git stuatus 命令看一下 是不是提示 noting to commit, working directory clean。如果出现这行提示 ,就说明之前的本地修改已经撤销了。
4. 撤销add的修改
有一种比较普遍的情况,就是你修改本地文件之后,马上就通过add命令把修改的更新到了代码仓库。这时候你想把修改的部分撤销。checkout命令就不好使了。
你可以先用git status命令 ,它会给你一些提示。
以上这种是已经add过已经修改的文件。注意上面橙色框的部分,它告诉你可以通过reset HEAR命令来撤销之前的add操作。
git reset HEAD directory
directory是你想还原文件的路径。
出现上面所示的提示,就表示你撤销了add操作。
然后继续通过status命令查看
你发现跟之前的status命令看到的一样了 通过checkout命令就可以把本地修改的也撤销了。
以上就基本上把查看修改以及撤销部分说了
还有一个比较常用的就是查看提交命令。这种情况属于项目以及提交过很多次了,你不可能具体的看每一次提交修改的代码部分。因此这个主要看每次提交的时候添加的一些说明信息。
git log
很简单吧,上面显示出提交的author date 以及之前提到的commit -p 后面得说明信息。
如果想具体查看提交的代码变化:
git log ID -1 -p
ID就是上图中commit 后面黄色的一大串 数字+字母的组合。
-1 表示只看一行记录
-p 表示看这条记录具体修改了哪些内容。
如果修改的部分特别多,可以通过按键q停止。
以上基本就是关于查看、回撤的一些命令了。