又讲到了Git,它里面自带了一个功能强大的命令git rebase -i,它可以改变历史,改变历史可能会产生问题,作为一个经验,应尽快避免历史共享,修改两个文件:userService.js和wishlistService.js改变本地功能分支的历史。
工具/原料
1
计算机
2
虚拟机
方法/步骤
1
首先建立了一个公众演示的仓库,可以使用这个仓库来进行练习,跟踪每一个提交信息的前缀是在上面的图表中使用的假的SHA,如图所示是git在分开提交f3时的分支图。
2
接着做的就是使用git的checkout功能checkout出我们的功能分支,用git rebase-i master开始做rebase,接下来git会用所配置的编辑器打开默认为Vim一个临时文件。
3
然后该文件会提供一些rebase选择,它带有一个提示,对于每一个提交,选择的动作有pick、rwork、edit、squash、fixup和exec,每一个动作也可以通过它的缩写形式p、r、e、s、f和e引用,描述每一个选项超出了本文范畴,具体任务,为f3提交选择edit选项。
4
接着保存文件在Vim中是按下后输入:wq,最后是按下回车。接下来到git在编辑选项中选择的提交处停止了rebase。
6
最后要将f3分成两个提交,重置git的指针到先前的提交f2而保持工作目录和现在一样。这就是git reset在混合模式在做的,由于混合模式是git reset的默认模式,直接用git reset head~1运行后用git status。
上一篇:linux git怎么和网站同步