导读:Git教程-帮助开发人员更好的运用Git,Git 作为分布式版本控制工具,近年来越来越受欢迎,很多公司、开发人员开始使用 Git 来替代 SVN。本片文章重点介绍了关于云效对开发人员使用Git更深层次的技能提升学习教程帮助开发人员更好的运用理解GiT的使用。
进阶学习资料
定制你的快捷命令
云效Git教程中有一个小技巧可以使你的 Git 体验更简单、容易、熟悉:别名。 如果不想每次都输入完整的 Git 命令,可以通过 git config 来轻松地为每一个命令设置一个别名。 这里有一些例子你可以试试
$ git config --globalalias.co checkout
$ git config --globalalias.brbranch
$ git config --globalalias.ci “commit -s”
$ git config–globalalias.st status
这意味着,当要输入 git commit -s 时,只需要输入 git ci。 随着你继续不断地使用 Git,可能也会经常使用其他命令,所以创建别名时不要犹豫。例如,为了解决取消暂存文件的易用性问题,可向 Git 中添加你自己的取消暂存别名:
$ git config --globalalias.unstage ‘reset HEAD --’
这会是下面的两个命令等价:
$ git unstage fileA $ git reset HEAD – fileA
这样看起来更清楚一些。 通常也会添加一个 Last 命令,像这样:
$ git config --global alias.last ‘log -1 HEAD’
这样,可以轻松地看到最后一次提交:
$ git last
commit 66938dae3329c7aebe598c2246a8e6af90d04646 Author: Josh Goebel <dreamer3@example.com> Date: Tue Aug 26 19:48:51 2008 +0800 test for current head Signed-off-by: Scott Chacon <schacon@example.com>
代码合并与变基
在 Git 中整合来自不同分支的修改主要有两种方法:合并(merge) 以及变基(rebase)。
合并
对于两个分支,如下图:
整合分支最容易的方法是 Merge 命令。 它会把两个分支的最新快照(C3和 C4)以及二者最近的共同祖先(C2)进行三方合并,合并的结果是生成一个新的快照(并提交)
Rebase合并
你可以提取在 C4 中引入的补丁和修改,然后在 C3的基础上应用一次。 在 Git 中,这种操作就叫做 变基。 你可以使用 rebase命令将提交到某一分支上的所有修改都移至另一分支上,就好像“重新播放”一样。
在上面这个例子中,运行:
它的原理是首先找到这两个分支