什么';“这是什么意思?”;编辑";“git reset--patch”中的选项;

什么';“这是什么意思?”;编辑";“git reset--patch”中的选项;,git,git-reset,Git,Git Reset,git reset-p然后使用“e”选项在重置应用的hunk之前编辑它的用例是什么 我尝试使用该命令,但git拒绝了我尝试的所有编辑。我认为手册页解释了该用例,以及您遇到的常见陷阱(为格式化而编辑): 我见过人们有效地使用这个命令;它非常适合删除额外的行和空格、记录器和调试器语句,或者修复最后一分钟的打字错误。但是应该谨慎使用,因为很容易创建一个不适用的补丁 发生这种情况时,您可以使用n放弃更改,并在文本编辑器中进行正确的更改 有关更多信息,请参见mangit add。如果您遇到“您编辑的hun

git reset-p然后使用“e”选项在重置应用的hunk之前编辑它的用例是什么


我尝试使用该命令,但git拒绝了我尝试的所有编辑。

我认为手册页解释了该用例,以及您遇到的常见陷阱(为格式化而编辑):

我见过人们有效地使用这个命令;它非常适合删除额外的行和空格、记录器和调试器语句,或者修复最后一分钟的打字错误。但是应该谨慎使用,因为很容易创建一个不适用的补丁

发生这种情况时,您可以使用
n
放弃更改,并在文本编辑器中进行正确的更改


有关更多信息,请参见
mangit add

如果您遇到“您编辑的hunk不适用”错误,那么这篇文章很有帮助/相关:您在编辑
e
时必须非常小心,这样您只能用空格替换
-
,或者用
+
删除行。然后我发现即使我很小心,改变最后一行有时也会让Git不高兴。但一旦成功,Git会将结果放入缓存,准备提交,将内容还原到选定状态。我发现令人困惑的是,这只会更改缓存,而不会更改工作目录。正如您已经发现的,用例是在应用之前编辑hunk。
-e, --edit
       Open the diff vs. the index in an editor and let the user edit it.
       After the editor was closed, adjust the hunk headers and apply the patch
       to the index.

       The intent of this option is to pick and choose lines of the patch to
       apply, or even to modify the contents of lines to be staged. This can be
       quicker and more flexible than using the interactive hunk selector.
       However, it is easy to confuse oneself and create a patch that does not
       apply to the index. See EDITING PATCHES below.