因为最近项目用到git较多,一些常用的命令经常忘记,好记性不如烂笔头,索性总结一下。这篇文章会系统的逐渐更新所有在git中用到的命令操作或者git基础知识,仅仅起到一个索引的作用,如果你有一定的git基础,但是想知道或者了解git在一个小团队的分支管理工作流程,可以参考这篇文章。
在git的版本管理中心有这样的一层关系,用流程图画出来会比较好。
该图借用了阮一峰老师blog的图。
- Workspace:工作区
- Index:暂存区
- Repository:仓库区(或本地仓库)
- Remote:远程仓库
Workspace就是项目的工作目录,index是在你git add .之后,文件修改会放入index暂存区,Repository是每个开发者自己的机子上维护的一个仓库,remote就是公司的Gitlab或者GitHub上存放的远程仓库。
Git配置
|
|
增加/提交文件
增加文件
|
|
提交文件
|
|
增加远程仓库
|
|
如果没有添加远程仓库,eclipse中每次push都需要手动添加远程仓库url,会很繁琐。
追踪关系
在某些场合,Git会自动在本地分支与远程分支之间,建立一种追踪关系(tracking)。比如,在git clone的时候,所有本地分支默认与远程主机的同名分支,建立追踪关系,也就是说,本地的master分支自动”追踪”origin/master分支,Git也允许手动建立追踪关系,但是一般并不这样搞。
远程同步
push
|
|
pull
|
|
分支管理
一般最常见的就是一个master分支和一个dev分支,dev分支用于日常开发,master分支用于版本更新版本发布。
查看分支
|
|
创建分支
|
|
合并分支
|
|
删除分支
|
|
标签管理
标签其中一个用处是用来标记一些版本信息,比如在master分支上打上v1.0、v1.1等版本信息,这样版本更新信息一目了然。
储藏
经常有这样的事情发生,当你正在进行项目中某一部分的工作,里面的东西处于一个比较杂乱的状态,而你想转到其他分支上进行一些工作。问题是,你不想提交进行了一半的工作,否则以后你无法回到这个工作点。解决这个问题的办法就是git stash命令。
“‘储藏”“可以获取你工作目录的中间状态——也就是你修改过的「被追踪」的文件和暂存的变更——并将它保存到一个未完结变更的堆栈中,随时可以重新应用。
注意堆栈是针对分支是全局的,所以各个分支都能看到你在另一个分支的stash,目前就用到了储藏的以上三个功能,其他更高级的慢慢接触。
撤销
|
|
参考资料
常用 Git 命令清单
Git远程操作详解
Git 工具 - 储藏
-EOF-