gpt4 book ai didi

git - `Git add --patch` 多个文件 : go to hunk from previous file

转载 作者:行者123 更新时间:2023-12-05 04:45:09 25 4
gpt4 key购买 nike

当运行 git add --patch 时,它会显示一系列可以使用 yn 应用或跳过的“ block ”分别,以及其他编辑选项等。

有时,在处理大量文件时,我无意中将 n 标记为最后一个,或者只是标记了一个我实际上打算标记为 y 的文件> 或 e,导致我转到下一个文件。在这种情况下,在使用补丁编辑器时,有什么方法可以让我将 1 个 hunk 移回之前的文件吗?

我知道有一个 g 选项可以转到同一文件中的特定大块 ,但我不确定如果hunk 来自以前的文件。有没有办法只“返回”一个大块头?

在这种情况下,我的选择似乎是再次添加-p所有更改(不好,因为可能有很多文件,需要跳过很多大块) ,或者记下我弄乱的单个文件并单独修补添加单个文件(可能还需要再次跳过许多 block )。

最佳答案

正如评论中所建议的,如果您需要更具交互性的东西,请使用 gui 工具。

git 附带一个基本的 gui 工具,您可以使用 git gui 调用它,它允许您:

  • 查看未暂存和已暂存的文件(列出它们并查看它们的内容),
  • 选择现有补丁中的行(单独的行或行 block )并暂存或取消暂存它们,
  • 以及其他一些操作,例如提交(有或没有修改)或 stash 。

我不太了解其他 GUI 工具,但我确信其中一些工具提供了良好的界面来运行 git add -p 的等价物。


作为一般性评论:如果您发现自己正在寻找添加部分补丁的改进方法并寻求如何内联编辑差异 block ,也许我值得问问自己,如果您想要的不是:

  • 将文件编辑成您想要的内容,然后暂存

git add -p 当然是一种只选择文件区域的便捷方式,但它也是一种创建您从未测试过的提交的方式,因为暂存内容从来都不是确切的内容你在磁盘上。

关于git - `Git add --patch` 多个文件 : go to hunk from previous file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69211955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com