GitRevert命令

/ / GitRevert命令

在Git中,术语"revert"用于还原某些更改, git revert命令用于应用还原操作,这是一个撤消类型命令。但是,这不是传统的撤消选择。在此过程中,它不会删除任何数据。相反,它将创建一个具有相反效果的新更改,从而撤消指定的提交。通常,git revert是一个提交。

这对于跟踪项目中的错误很有用。如果要从历史记录中删除某些内容,那么git revert是错误的选择。

而且,我们可以说git revert记录了一些新的更改,这些更改与先前进行的提交相反。要撤消更改,请运行以下命令:

语法:

$ git revert 

Git Revert 选项

Git还原允许进行一些其他操作,例如编辑(editing),清除(cleanup)等等。让我们简要地了解这些选项:

<commit>- commit选项用于还原提交。要还原提交,我们需要提交参考ID。 git log命令可以访问它。

$ git revert <commit-ish>

<edit> - 它用于在还原提交之前编辑提交消息。它是git revert命令中的默认选项。

$ git revert-e <commit-ish>

-m parent-number/--mainline parent-number - 用于还原合并。通常,我们无法还原合并,因为我们不知道应该将合并的哪一侧为主从那分支。我们可以指定父代号,并允许还原以相对于指定父代撤消更改。

-n/--no edit -  此选项将不会打开文本编辑器。它将直接还原上一次提交。

$ git revert-n <commit-ish>

--cleanup=<mode>-  清除选项确定如何从邮件中删除空格和注释。

-n/-no-commit         -  默认情况下,revert命令会提交。 no-commit选项将不会自动提交。此外,如果使用此选项,则索引不必与HEAD提交匹配。

Git恢复之前提交

假设您对项目的文件 newfile2.txt 进行了更改。之后,您提醒您在错误的文件或错误的分支中进行了错误的提交。现在,您要撤消所做的更改。 Git允许您纠正错误。考虑下图:

Git Revert

从上面的输出中可以看到,我在newfile2.txt中进行了更改。我们可以通过git revert命令撤消它。要撤消更改,我们将需要提交。要检查提交,请运行以下命令:

$ git log

考虑以下输出:

Git Revert

在上面的输出中,我已经复制了最新的commit-ish以进行还原。现在,我将对该提交执行还原操作。它将作为:

$ git revert 099a8b4c8d92f4e4f1ecb5d52e09906747420814

输出:

Git Revert

从上面的输出中可以看到,对存储库所做的更改已还原。

如何还原合并

通常,还原合并被认为是一个复杂的过程。如果操作不正确,可能会很复杂。我们将借助git revert命令撤消合并操作。尽管其他一些命令(如git reset)也可以做到。让我们了解如何还原合并。考虑下面的例子。

我在测试中对文件design2.css进行了一些更改,并将其与test2合并。 考虑以下输出:

Git Revert

要还原合并,我们必须获取其参考号。要检查提交历史记录,请运行以下命令:

$ git log 

上面的命令将显示提交历史记录。考虑以下输出:

Git Revert

从上面的输出中,复制要还原的合并提交,然后运行以下命令:

$ git revert <commit reference>-m 1

上面的命令将还原合并操作。在这里,-m 1用作第一个父级的主线。合并提交有多个父母。还原需要其他信息来确定应将合并的父级视为主线。在这种情况下,将使用参数-m。考虑以下输出:

Git Revert

从上面的输出中,我们可以看到先前的合并已还原。

祝学习愉快! (发现内容有误?请选中要编辑的内容 -> 右键 -> 修改 -> 提交!帮助我们改进教程质量)

精选教程推荐

👇 以下精选教程可能对您有帮助,拓展您的技术视野

AI原生开发工作流实战 -〔Tony Bai〕

数据分析思维课 -〔郭炜〕

etcd实战课 -〔唐聪〕

Spark核心原理与实战 -〔王磊〕

Spring Boot与Kubernetes云原生微服务实践 -〔杨波〕

深入浅出计算机组成原理 -〔徐文浩〕

从0开发一款iOS App -〔朱德权〕

iOS开发高手课 -〔戴铭〕

Linux性能优化实战 -〔倪朋飞〕

📝 好记忆不如烂笔头,留下您的学习笔记吧!

暂无学习笔记,成为第一个分享的人吧!

您的笔记将帮助成千上万的学习者