sourceTree的两种重置恢复提交(后续还会更新其他用处)

一、会在当前分支留下记录

我当前Git有七次记录,我想回滚到第三次提交。

1.找到第三版记录,右键点击 重置当前分支到此次提交---》强行合并-丢弃所有改动过的工作副本

2.找到远程仓库中对应的远端分支,一定要找最新的节点,右键点击 重置当前分支到此次提交---》软合并-保持所有本地改动

3.然后点击提交推送就好啦,这样Git也会留下足迹,代码也会回滚回去。

二、重建一个分支将回滚的代码拉到新分支上

将上次操作的Git回滚到第六个版本

1.找到第六版记录,右键点击 重置当前分支到此次提交---》强行合并-丢弃所有改动过的工作副本

2. 然后在当前分支下新拉一个分支出来 (执行完成后,此时会提示有新的更新需要拉取,不要拉取,拉取后又会把之前的拉取到本地,应该执行commit,但又无法再souceTree执行,此时借助终端。打开终端,cd到项目目录,执行git push -u origin master -f,其实这种方式也可以,但这里讲只用sourceTree。)

3.这样我们就得到了一个回归到第六版本的分支,不过这是一个新分支,它只会保留选择节点之前的所有代码。

三 Git/SourceTree 清理无效的远程追踪分支

如果在远程版本库上删除了某一分支,假如你的远程仓库名是 origin(注意,一定是仓库名!不是分支名),则使用如下命令先查看哪些分支需要清理:

$ git remote prune origin --dry-run

可以看到, origin远程分支已经失效的分支,执行被清理:

$ git remote prune origin

这样,就完成了无效的远程追踪分支的清理工作。

四 将本地未推送代码退回到暂存或者未暂存状态

方法1:“软合并---保持所有本地改动”——是指本地仓库将会重置到此次提交的节点,并且大于此次节点的本地仓库改动的代码           将会回退到你的文件状态里的暂存区。

方法2:“混合合并---保持工作副本并重置索引”——与软合并类似,不过将会回退到你的文件状态里的未暂存区。

1.当前最新版本是11,我现在提交了一个12但是状态并没有推送,现在我不想提交12了或者我有修改,可以向下方操作,找到最新代码记录右键重置到此次提交,选择上面两种方式的一种,将文件修改后再推上去或者直接丢弃就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值