使用sourcetree进行重置代码,回滚到指定节点。

安全的方法

首先在要退回的版本上右键,选择重置到这次提交。

使用sourcetree进行重置代码,回滚到指定节点。_第1张图片

重置到这次提交
选择强行合并,确定。
使用sourcetree进行重置代码,回滚到指定节点。_第2张图片

强行合并
在最新的版本上右键,选择重置到这次提交。
使用sourcetree进行重置代码,回滚到指定节点。_第3张图片

重置到这次提交
选择软合并,确定
使用sourcetree进行重置代码,回滚到指定节点。_第4张图片

软合并
这个时候查看一下文件状态,会发现文件都已经回滚到以前的版本上了。
这里显示的文件更改是将文件回滚回去的反向更改,最后将这些文件提交就可以了。
使用sourcetree进行重置代码,回滚到指定节点。_第5张图片

回滚以后
这种回滚方式是安全的,文件会根据提交的变化更改文件回到原来的状态,会在版本树上留下记录。这样所有的更改都有记录可以查。

暴力的方法 (不建议使用,会覆盖远程)

右键选中要回滚到的版本,选择重置到这次提交。
重置到这次提交
使用sourcetree进行重置代码,回滚到指定节点。_第6张图片

选择软合并,确定。
使用sourcetree进行重置代码,回滚到指定节点。_第7张图片

软合并
这个时候可以看到有文件可以从远程拉取下来,如果拉取下来就会像什么都没有发生一样,前面的操作都会被抵消掉的。这是一次后悔的机会。后面的操作很危险咯。。就是想回滚请忽视本条。

使用sourcetree进行重置代码,回滚到指定节点。_第8张图片

后悔了就拉下来
下面将代码推送到远程,选择强制推送!!点击确定。
使用sourcetree进行重置代码,回滚到指定节点。_第9张图片

强制推送
这样我们就完成了,完成了本地覆盖远程的操作。
使用sourcetree进行重置代码,回滚到指定节点。_第10张图片

覆盖远程
注意:这个时候在文件状态里依然可以看到被修改的文件,如果后悔回滚可以将其重新提交,不过会被整合成一次提交。如果不需要请根据类型选择重置或者移除。

你可能没有强制推送这个选项,打开sourcetree的偏好设置,点开高级勾选上允许强制推送。
使用sourcetree进行重置代码,回滚到指定节点。_第11张图片

允许强制推送

作者:时光遣散故人_
链接:https://www.jianshu.com/p/95ac86fe593f
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

你可能感兴趣的:(C#&Windows,github,git)