当前,git由于其分布式控制、元数据存储方式、没有全局版本号、更优的储存算法、对网络的依赖性不强等优势,成为很多公司的代码控制工具,结合前两篇文章,可以说能解决工作中的大部分git问题。

第一篇 如何把项目托管到git Coding

第二篇 git项目管理流程

在此基础上查缺补漏,总结和加深,往下看;

这一条命令,调用图形界面查看所有提交记录,也可以直接在这个图形界面上进行操作;

1
2
3
$ gitk -all
# 或者说
$ gitk -a

关于分支的操作,查看本地分支,查看所有分支,查看远程分支;

1
2
3
4
5
6
# 查看本地分支
$ git branch
# 查看所有分支
$ git branch -a
# 查看远程分支
$ git branch -r

同步远程分支;

1
$ git fetch

合并某个分支,前提是你要切换到需要合并的那个分支,比如说把B分支合并到A分支,需要先切换到A分支,再执行下面的命令;

1
$ git merge B

下面是关于放弃修改操作;

对于未使用git add缓存代码,可以使用如下命令放弃指定文件的修改;

1
2
$ git checkout -- filepathname
# 放弃readme文件修改 git checkout -- readme.md

放弃所有文件的修改可以使用;

1
$ git checkout .

对于已经使用了git add缓存了代码,可以使用如下命令放弃指定文件的缓存;

1
2
$ git reset HEAD filepathname
# 例 git reset HEAD readme.md

放弃所有文件的修改缓存可以使用;

1
$ git reset HEAD .

对于已经用git commit提交了代码,可以使用如下命令来回退到上一次commit的状态;

1
$ git reset --hard HEAD^

使用如下命令可以用来回退到任意版本;

1
$ git reset --hard  commitid

当然,这个提交ID commitid 是通过git log命令来查看。