uTools-Manuals/docs/git/git revert.html
2019-04-08 23:22:26 +08:00

3 lines
6.5 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="c-markdown doc-markdown"><div class="doc-postil"><div class="c-markdown"><h2>命名</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>git-revert  - 恢复一些现有的提交</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>概要</h2></div></div><div class="doc-postil"><div class="c-markdown"><pre class="prism-token token language-javascript">git revert [--[no-]edit] [-n] [-m parent-number] [-s] [-S[&lt;keyid&gt;]] &lt;commit&gt;
git revert --continuegit revert --quit
git revert --abort</pre></div></div><div class="doc-postil"><div class="c-markdown"><h2>描述</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>给定一个或多个现有的提交,恢复相关修补程序引入的更改,并记录一些记录它们的新提交。这要求你的工作树是干净的(不需要修改 HEAD 提交)。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>注意:<code>git revert</code>用于记录一些新的提交以反转一些早期提交的影响(通常只是错误的提交)。如果你想扔掉工作目录中所有未提交的更改,你应该看到 git-reset [1],特别是<code>--hard</code>选项。如果你想提取特定文件,就像在另一个提交中那样,你应该看到 git-checkout [1],特别是<code>git checkout &lt;commit&gt; -- &lt;filename&gt;</code>语法。请谨慎使用这些替代方法,因为它们都会丢弃工作目录中的未提交更改。</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>选项</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>&lt;commit&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p>承诺恢复。有关拼写提交名称的更完整列表,请参阅 gitrevisions [7]。提交集也可以给出,但默认情况下不进行遍历,参见 git-rev-list [1] 及其<code>--no-walk</code>选项。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-e   --edit</p></div></div><div class="doc-postil"><div class="c-markdown"><p>使用此选项,<code>git revert</code>将允许您在提交还原之前编辑提交消息。如果您从终端运行命令,这是默认值。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-m parent-number   --mainline parent-number</p></div></div><div class="doc-postil"><div class="c-markdown"><p>通常您无法恢复合并因为您不知道合并的哪一方应被视为主线。此选项指定主线路的父代号码从1开始并允许还原以相对于指定的父代的相反更改。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>恢复合并提交声明您将永远不希望合并引入的树更改。因此,稍后的合并只会引入不是先前还原合并的祖先的提交引入的树更改。这可能是也可能不是你想要的。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>有关更多详细信息,请参阅<a href="https://git-scm.com/docs/howto/revert-a-faulty-merge.html" target="_blank">恢复错误合并的方法</a></p></div></div><div class="doc-postil"><div class="c-markdown"><p>--no-edit</p></div></div><div class="doc-postil"><div class="c-markdown"><p>使用此选项,<code>git revert</code>将不会启动提交消息编辑器。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-n   --no-commit</p></div></div><div class="doc-postil"><div class="c-markdown"><p>通常,该命令会自动创建一些提交日志消息,提交哪些提交已恢复。此标志应用必要的更改以将命名的提交恢复到您的工作树和索引,但不进行提交。此外,使用此选项时,您的索引不必与 HEAD 提交匹配。回复是针对索引的开始状态完成的。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>将多个提交的效果还原为连续的索引时,这非常有用。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-S&lt;keyid&gt;   --gpg-sign=&lt;keyid&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p>GPG 标志提交。该<code>keyid</code>参数是可选的,并且默认为提交者身份; 如果指定,它必须粘贴到选项没有空格。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-s   --signoff</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在提交消息的末尾添加 Signed-off-by 行。有关更多信息,请参阅 git-commit [1] 中的 signoff 选项。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--strategy=&lt;strategy&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p>使用给定的合并策略。只能使用一次。有关详细信息,请参阅 git-merge [1] 中的 MERGE STRATEGIES 部分。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-X&lt;option&gt;   --strategy-option=&lt;option&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p>将合并策略特定选项传递给合并策略。有关详细信息,请参阅 git-merge [1]。</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>Sequencer子命令</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>--continue</p></div></div><div class="doc-postil"><div class="c-markdown"><p>使用中的信息继续正在进行的操作<code>.git/sequencer</code>。可以在解决失败的 cherry-pick 或恢复中的冲突后继续使用。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--quit</p></div></div><div class="doc-postil"><div class="c-markdown"><p>忘记当前正在进行的操作。在 cherry-pick 或恢复失败后可用于清除音序器状态。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--abort</p></div></div><div class="doc-postil"><div class="c-markdown"><p>取消操作并返回到预序列状态。</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>例子</h2></div></div><div class="doc-postil"><div class="c-markdown"><p><code>git revert HEAD~3</code></p></div></div><div class="doc-postil"><div class="c-markdown"><p>恢复 HEAD 中最后第四次提交指定的更改,并使用恢复的更改创建一个新的提交。</p></div></div><div class="doc-postil"><div class="c-markdown"><p><code>git revert -n master~5..master~2</code></p></div></div><div class="doc-postil"><div class="c-markdown"><p>将提交完成的更改从 master包含中的第五次提交恢复为 master包含中的第三次提交但不要使用已还原的更改创建任何提交。恢复只修改工作树和索引。</p></div></div></div>