Make git add --patch 记住我拒绝添加的帅哥直到下一次提交
Make git add --patch remember which hunks I've declined to add until the next commit
我的常见工作流程是进行大量代码编辑,然后使用 git add --patch
将我的更改组织成逻辑上一致的提交。
一个反复出现的场景是这样的:
- 我跳过了一堆与我要进行的提交无关的更改
- 我添加了一些有意义的更改
- 我发现了一个拼写错误或一些我忘记删除的注释掉的代码
- 我点击
q
退出交互式添加
- 我返回我的编辑器并进行小改动
- 我又开始了
git add --patch
- 我再次非常仔细地检查了整个更改集,确保为所有我不想包括的帅哥再次输入
n
- 我找到我最新更新的帅哥并输入
y
添加它。
- 转到第 1 步
这个循环一遍又一遍地进行,直到我的提交准备就绪。
我想要 git 记住我明确拒绝添加的帅哥,这样下次我 运行 git add --patch
时,我就不会不得不再次拒绝他们。
我认为 git 不支持这一点,但是否有任何我可以调整的工具或工作流程可以使这更容易?
这可能最好使用我的编辑器中的 Git 集成(目前 VSCode)。
在有变化的文件的Git: Open Changes
视图中,您可以select 文件的一个区域,然后运行 Git: Stage Selected Ranges
命令来暂存一个块。由于您就在编辑器中,因此在暂存之前在那里进行更改是微不足道的。
我可能只需要更改我的工作流程并以这种方式进行分期。
(相信Emacs中的Magit也支持这种工作流程。)
我的常见工作流程是进行大量代码编辑,然后使用 git add --patch
将我的更改组织成逻辑上一致的提交。
一个反复出现的场景是这样的:
- 我跳过了一堆与我要进行的提交无关的更改
- 我添加了一些有意义的更改
- 我发现了一个拼写错误或一些我忘记删除的注释掉的代码
- 我点击
q
退出交互式添加 - 我返回我的编辑器并进行小改动
- 我又开始了
git add --patch
- 我再次非常仔细地检查了整个更改集,确保为所有我不想包括的帅哥再次输入
n
- 我找到我最新更新的帅哥并输入
y
添加它。 - 转到第 1 步
这个循环一遍又一遍地进行,直到我的提交准备就绪。
我想要 git 记住我明确拒绝添加的帅哥,这样下次我 运行 git add --patch
时,我就不会不得不再次拒绝他们。
我认为 git 不支持这一点,但是否有任何我可以调整的工具或工作流程可以使这更容易?
这可能最好使用我的编辑器中的 Git 集成(目前 VSCode)。
在有变化的文件的Git: Open Changes
视图中,您可以select 文件的一个区域,然后运行 Git: Stage Selected Ranges
命令来暂存一个块。由于您就在编辑器中,因此在暂存之前在那里进行更改是微不足道的。
我可能只需要更改我的工作流程并以这种方式进行分期。
(相信Emacs中的Magit也支持这种工作流程。)