Git Revert命令

Git Revert命令

在Git中,使用revert术语来撤销一些更改。git revert命令用于应用revert操作。它是一种撤销类型的命令。然而,它不是一个传统的撤销替代方案。在此过程中,它不会删除任何数据;相反,它将创建一个具有相反效果的新更改,从而撤销指定的提交。通常,git revert是一次提交。

它可以用于跟踪项目中的错误。如果你想从历史记录中删除某些内容,那么git revert是一个错误的选择。

此外,我们可以说git revert记录一些与先前的提交正好相反的新更改。要撤销这些更改,请运行以下命令:

语法:

$ git revert 

Git撤销选项

Git撤销允许一些附加操作,如编辑,不编辑,清理等。让我们简要了解这些选项:

<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: 通常,默认情况下,恢复命令会自动提交。no-commit选项将不会自动提交。此外,如果使用了该选项,您的索引不必与HEAD提交匹配。

no-commit选项有助于连续将多个提交效果还原到您的索引中。

让我们了解如何还原之前的提交。

Git还原到先前的提交

假设您对项目中的一个文件进行了更改,比如 newfile2.txt 。以及后来,您想起在错误的文件或错误的分支上进行了错误的提交。现在,您想要撤消这些更改。Git允许您纠正错误。请参考下面的图片:

Git Revert命令

从上面的输出中可以看出,我在newfile2.txt中做了更改。我们可以通过git revert命令来撤销更改。要撤销更改,我们需要commit-ish。要检查commit-ish,请运行以下命令:

$ git log

考虑下面的输出:

Git Revert命令

在上述输出中,我已经复制了最近的提交的commit-ish以进行回滚。现在,我将对此提交执行回滚操作。它将操作如下:

$ git revert 099a8b4c8d92f4e4f1ecb5d52e09906747420814

上述命令将撤消我的最后一次提交。请参考以下输出:

Git Revert命令

Git回滚合并

在Git中,合并也是一个具有至少两个父级的提交。它将分支和代码连接起来,创建一个完整的项目。 在Git中,合并是一个包含至少两个父级的提交。它将多条开发线路汇集在一起。在将功能在分支中开发然后合并到主线的工作流中,合并提交通常会有两个父级。

如何回滚合并

通常来说,回滚合并被认为是一个复杂的过程。如果不正确地执行,可能会变得复杂。我们将通过git revert命令来撤消合并操作。虽然一些其他命令如git reset也可以完成这个任务。让我们来了解如何回滚合并。考虑下面的例子。 我对我的文件 design2.css 做了一些更改,并在测试上与 test2 合并。考虑下面的输出:
Git Revert命令

要撤销合并,我们必须获取其参考编号。要检查提交历史,请执行以下命令:

$ git log 

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

Git Revert命令

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

$ git revert <commit reference> -m 1

上述命令将撤消合并操作。这里,-m 1 用于将第一个父提交作为主线。合并提交具有多个父提交。撤消操作需要额外的信息来决定将合并的哪个父提交视为主线。在这种情况下,使用参数 -m。请参考下面的输出:

Git Revert命令

从上面的输出可以看出,之前的合并已经被撤销。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程