网站首页 > 基础教程 正文
前言
Sourcetree回滚提交和重置当前分支到此次提交的区别?
- 回滚提交
是指将改动的代码提交到本地仓库,但未推送到远端仓库的时候。
也就是说刚刚提交代码,没有推送,这时候你发现提交错了,只需要选择本地分支你刚提交的节点上,右击回滚一下即可,这时候本地分支会出现“Revert”的字样,推送按钮会出现提示推送的角标,这时候你可以直接推送一下,远端也不会有变化,只不过是推送一些日志记录或者其他与代码无关的,或者也可以提交好正确的代码后,一起推送。
还有一种情况就是回滚后发现没有错误,这时候刚写的代码已经没了...那就索性再回滚一次,也就是说撤销刚才的回滚操作,这时候本地分支节点上会出现“Revert 'Revert '”的字样,推送按钮也会出现提示推送的角标,这时候可以仿照上一步后半部分操作。
- 重置当前分支到此次提交
是指将改动的代码提交到本地仓库后,并已推送到远端仓库的时候。
正文
演示dev分支重置到“update: 在dev上,第3次修改”此次提交。请先备份分支或者将该分支合并到其它分支,以便操作错误,内容丢失。
Soursetree切换到dev分支,查看文件内容
目标节点文件内容
Soursetree中选中要重置到的目标节点
右键选中“重置当前分支到此次提交”
选中“强制合并-丢弃所有改动过的工作副本”
提交&推送(2种方式)
方式一
软合并-保持所有本地改的
选中最新的远程dev分支,右键选中“重置当前分支到此次提交”,选中“软合并-保持所有本地改的“,点击确定。
提交
推送
点击推送,推送成功则重置操作完成。
重置操作完成
查看文件内容是否已重置到目标状态
方式二
提交
此时代码与远程仓库代码不一致,因为重置,所以比远程仓库当前分支少N个版本。此时,不要拉取代码。使用soursetree推送代码会失败,本地有未拉取代码。解决办法:打开命令行,使用终端命令进行强制推送
推送
进入git文件目录,查看并切换到dev分支,执行推送命令:git push -f
重置操作完成
查看文件内容是否已重置到目标状态
猜你喜欢
- 2025-04-30 代码管理工具git操作全总结(基于git的代码托管及版本控制)
- 2025-04-30 8、表单控制:预言水晶球——React 19 复杂表单处理
- 2025-04-30 「转」CS可视化:有用的Git命令(git可视化管理页面)
- 2025-04-30 看完这篇轻松玩转Git:详细、浅显、易学
- 2025-04-30 git撤销commit(git撤销commit但不改变文件)
- 2025-04-30 Java开发人员的版本控制技能:Git的趣味之旅
- 2025-04-30 GIT,如何恢复修改过的文件,回到过去呢?
- 2025-04-30 git工作区、暂存区、本地仓库、远程仓库的区别和联系
- 2025-04-30 Git从入门到精通:拯救你的代码仓库的终极指南
- 2025-04-30 Git恢复至之前版本(gitreset版本恢复命令)
- 最近发表
- 标签列表
-
- 菜鸟教程 (58)
- jsp (69)
- c++教程 (58)
- pythonlist (60)
- gitpush (78)
- gitreset (66)
- pythonif (68)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)