Git处理分枝和合并是非常独到的。无论是创建新分枝还是分枝之间切换,都表现出一个共同的特征--快!Git
鼓励在工作流程中频繁使用分支与合并,哪怕一天之内进行许多次都没有关系.下面就详解一下Git的合并与撤销
Git合并
比如现在项目提交了几次更新,在C2通过主分支创建了2个不同的分支做不同的任务
等任务做完需要merge到master时就可以切换到master分支下分别merge
iss01和iss02分支。首先merger iss01时,会看到Fast Forward的提示,因为C3是C2的直接上游,所以Git只需把 master 分支指针直接右移。此次合并不会产生任何的冲突。如下图。
然后在用master合并iss02,会看到Merge made by
recursive.,Git会合并C3,C4并对合并后的结果重新做一个新的快照,并自动创建一个指向它的提交对象C5如下图
有时候合并操作并不会如此顺利。在进行如上操作的过程中,如果iss01和iss02修改到了同一个文件的相同代码时,就会出现冲突,遇到此问题时我们可以用小乌龟自带的冲突工具解决。如下图
如果在分支iss01提交的时候它的直接祖先C2也进行了修改,如下图。这时候在用C6合并C4也是可以的,Git会自己裁决哪个共同祖先才是最佳合并基础,所以此特性让Git的合并操作比其他系统都要简单不少。
Git撤销
如果文件已经修改,但是还没有commit,我们可以用小乌龟的revert命令进行撤销。
如果文件已经commit,可以使用git reset --hard
HEAD~1撤销上一次提交。~<index>代表撤销前几次的提交.
此命令回退一次commit,在回退到的commit之后的所有修改都被丢弃,所以要慎重使用。
也可以使用git reset --soft
HEAD~1撤销上一次提交,它和hard的区别是,同样取消一次commit,但是所有的修改都保留。此方法用来修改commit的message非常方便。
git-revert HEAD~1
一般是按照某一次的commit完全反向的进行一次commit,他的效果和git-reset --hard HEAD~1 &&
git-commit -a -m 'revert commit <commitid> xxx....' 完全一样。
reset命令只是相当于在本地进行一次还原操作,如果想让别的分支知道你的撤销动作,请使用revert命令,它是完全反向的进行一次commit。
- 大小: 3.5 KB
- 大小: 3.7 KB
- 大小: 4 KB
- 大小: 1.4 KB
- 大小: 3.7 KB
分享到:
相关推荐
windows xp git安装包 Git-2.10.0-32-bit,支持Windows XP 32位系统
Git-2.28.0-64-bit.exe Git-2.28.0-64-bit.exe Git-2.28.0-64-bit.exe
git-2.41.0-64-bit window版本下载
Git的使用-------
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
3、Git离线操作性:Git可以离线进行代码提交,因此它称得上是完全的分布式处理,Git所有的操作不需要在线进行;这意味着Git的速度要比SVN等工具快得多,因为SVN等工具需要在线时才能操作,如果网络环境不好, 提交...
Git-2.37.3-64-bit_3
git安装包
Git-2.40.0-64-bit.exe Git是一个免费的开源分布式版本控制系统,可以快速高效地处理从小到大的所有项目。Git易于学习,占用空间小,性能却非常快。它超越了像Subversion、CVS、Perforce和ClearCase这样的配置管理...
Git-2.15.1.2-64-bit安装包 内附操作文档 Git操作 Pycharm 克隆服务器代码 VScode 克隆服务器代码
Windows Git 2.10.2 64-bit
Git(读音为/gɪt/)是一个开源的分布式版本控制系统
该安装包适用于windows64位的操作系统,该git软件很稳定,很好用,用过的都知晓,欢迎大家前来下载
explain-git-with-d3 使用 D3 对 git 的分支操作进行简单的可视化展示。 标签:explain
git branch 查看本地所有分支 git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支 git branch -r 查看远程所有分支 git commit -am "init" 提交并且加注释 git remote add origin git@192....
Git-2.28.0-64-bit git安装包windos64位官方下载
从官网下载太费劲,Git-2.26.0当前(2020年3月30日)最新版,包含64位,32位,方便下载
Git-2.30.0-64-bit Git-2.30.0-64-bit Git-2.30.0-64-bit Git-2.30.0-64-bit
git下载,上传百度云吧