一、问题描述 在利用github实现多人合作程序开发的过程中,我们有时会出现错误提交的情况,此时我们希望能撤销提交操作,让程序回到提交前的样子,本文总结了两种解决方法:回退(reset)、反做(revert)。 二、背景知识git的版本管理,及HEAD的理解 使用git的每次提交,Git都会自动把它们串成一条时间线,这条时间线就是一个...
也可以通过github网站图形化界面查看版本号: 2.使用“git revert -n 版本号”反做,并使用“git commit -m 版本名”提交: (1)反做,使用“git revert -n 版本号”命令。如下命令,我们反做版本号为8b89621的版本: 1 git revert -n 8b89621019c9adc6fc4d242cd41daeb13aeb9861 注意: 这里可能会出现冲突,那么...
那么我就要把v3藏到另一个地方。 这个时候reset mixed就用上了,小伙伴们看到的是v1,v2,v3(名字而已),一切像是没有发生过一样。 结论:能用revert最好用revert,恢复历史版本最安全。想要恢复以前的内容也可以reset hard Vn(会丢掉后n后面的所有版本历史)。想要把新的代码装到旧瓶子里,可以试试reset mixed,同样...
可以尝试git revert命令 reset是指将当前head的内容重置,不会留任何痕迹。 Sets the current head to the specified commit and optionally resets the index and working tree to match. git reset --hard HEAD~3 会将最新的3次提交全部重置,就像没有提交过一样。 根据--soft --mixed --hard,会对working tr...
在利用github实现多人合作程序开发的过程中,我们有时会出现错误提交的情况,此时我们希望能撤销提交操作,让程序回到提交前的样子,本文总结了两种解决方法:回退(reset)、反做(revert)。 二、背景知识 git的版本管理,及HEAD的理解 使用git的每次提交,Git都会自动把它们串成一条时间线,这条时间线...
git revert和git reset的区别 先看图: sourceTree中revert译为提交回滚,作用为忽略你指定的版本,然后提交一个新的版本。新的版本中已近删除了你所指定的版本。 reset为重置到这次提交,将内容重置到指定的版本。git reset命令后面是需要加2种参数的:–-hard和–-soft。这条命令默认情况下是-–soft。
git reset --hard:撤销上一次对文件的所有修改 开发中git reset --soft 使用比较多一些。 2. Git Revert Commit 原理: git revert是用于“反做(undo)”某一个提交,以达到撤销该提交的修改。 适用场景:如果我们想撤销之前的某一个commit,但又想保留该commit之后的提交代码。
我们执行git reset --hard HEDA^实现版本回退,暂存区工作区的状态如下: 58.png 我们可以看到,暂存区和工作区的修改都不见了,这体现了--hard和--soft两参数的不同 小结 git revert HEAD命令没有版本的回退,实际上版本还增加,增加的是错误版本之前的复制版本(与错误版本之前的版本内容一样,但不是同一版本,id都...
git reset --hard HEAD~3 会将最新的3次提交全部重置,就像没有提交过一样。 根据--soft --mixed --hard,会对working tree和index和HEAD进行重置。 revert是撤销某次提交,但是这次撤销也会作为一次提交进行保存(这样就不会丢失原来修改过,但是没有提交的内容?)。
一、 在git操作中,有时候,进行了错误的提交,但是还没有push到远程分支,想要撤销本次提交,可以使用git reset –-soft/hard命令。 1、二者区别: git reset –-soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可; ...