赞
踩
git 的使用过程如下:
无论开发还是运维,git命令的掌握都是不可缺少的,但是呢,GIt命令非常多,有的命令的使用还是不太好理解,时间长了还会忘记,哎....
所以我们一直想着,有没有类似git知识的动画,一看就懂,看过了还不能忘,直到我在网站里看到了一篇小姐姐写的一篇<< CS Visualized: Useful Git Commands>>文档,用动画介绍了Merge Rebase、Reset、Revert、Cherry-Pick、Fetch、Pull、Reflog等命令的执行过程。
1、Fast-forward 模式
2、No-fast-foward 模式
我们可以对基于基准的提交执行6个操作:
如果我想删除一个提交:
或者压缩多个提交
1、Soft reset
一个软复位移动HEAD到指定的提交(或相对于提交的指数HEAD),没有摆脱被引入于事后提交的变化!
2、Hard reset
有时,我们不想保留某些提交所引入的更改。与软重置不同,我们不再需要访问它们。Git应该简单地将其状态重置为指定提交时的状态:这甚至包括工作目录和暂存文件中的更改!
取消更改的另一种方法是执行git revert。通过还原某个提交,我们创建一个包含还原更改的新提交!
当某个分支包含一个引入了我们活动分支所需的更改的提交时,我们可以执行cherry-pick该命令!通过cherry-pick提交,我们在活动分支上创建了一个新的提交,其中包含cherry-picked提交所引入的更改。
如果我们有一个远程Git分支,例如Github上的一个分支,则可能发生该远程分支具有当前分支所没有的提交!也许另一个分支被合并了,您的同事提出了快速解决方案,依此类推。
尽管git fetch对于获取分支的远程信息非常有用,但是我们也可以执行a git pull。A git pull实际上是两个命令合二为一:git fetch和git merge。当我们从原点提取更改时,我们首先要像使用一样获取所有数据git fetch,之后最新的更改会自动合并到本地分支中。
如果您输入有误,可以HEAD根据reflog提供给我们的信息进行重置,轻松地重做!
假设我们实际上不想合并origin分支。当执行git reflog命令时,我们看到合并之前仓库的状态为HEAD@{1}。让我们执行一次git reset将HEAD指向它所在的位置HEAD@{1}!
最后,送一份福利,git命令大全:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。