Make git add——补丁记住我是哪个大块头';在下次提交之前,我拒绝添加
我的常见工作流程是进行大量代码编辑,然后使用Make git add——补丁记住我是哪个大块头';在下次提交之前,我拒绝添加,git,git-add,Git,Git Add,我的常见工作流程是进行大量代码编辑,然后使用git add--patch将更改组织成逻辑一致的提交 一个反复出现的场景是: 我跳过了一系列与我要进行的提交无关的更改 我添加了一些有意义的更改 我发现了一个打字错误或一些我忘记删除的注释代码 我点击q退出交互式添加 我回到我的编辑那里,做了一些小改动 我再次启动git add--patch 我非常小心地再次浏览整个更改集,确保为所有我不想包含的大块头再次键入n 我找到我最新更新的帅哥并键入y添加它 转到步骤1 这个循环一次又一次地进行,直到我的提交
git add--patch
将更改组织成逻辑一致的提交
一个反复出现的场景是:
q
退出交互式添加n
y
添加它git add--patch
,我就不必再拒绝了
我认为git不支持这一点,但有没有任何工具或工作流程可以让这一点变得更简单?在我的编辑器(目前是VSCode)中使用git集成可以最好地实现这一点 在带有更改的文件的
Git:openchanges
视图中,您可以选择文件的一个区域,然后运行Git:Stage Selected Ranges
命令来准备一个大块头。因为您在编辑器中的位置是正确的,所以在登台之前对其进行更改很简单
我可能只需要更改我的工作流程并以这种方式进行登台
(我相信Emacs中的Magit也支持这种工作流。)在我的编辑器(目前是VSCode)中使用Git集成可以最好地实现这一点 在带有更改的文件的
Git:openchanges
视图中,您可以选择文件的一个区域,然后运行Git:Stage Selected Ranges
命令来准备一个大块头。因为您在编辑器中的位置是正确的,所以在登台之前对其进行更改很简单
我可能只需要更改我的工作流程并以这种方式进行登台
(我相信Emacs中的Magit也支持这种工作流。)你为什么不支持“尽早提交,经常提交”风格呢?我确实经常提交,但特别是当我在一个不熟悉的代码库中或是在编写一些东西时,我会在我的工作副本中进行一些编辑,这些编辑对于将它们组合到一个提交中是没有意义的。值得一提的是,我发现自己在进行了大量需要重建和清理的黑客攻击时,也会遇到类似的情况。我没有尝试用git add-p
git-add-p
,而是在一个临时分支上提交一个大的更改,然后在“真正的分支”上重新开始更小、计划更好的更改。你为什么不支持“尽早提交,经常提交”风格呢?我确实经常提交,但是,特别是如果我在一个不熟悉的代码库中,或者正在添加一些内容,我的工作副本中会有一些编辑,这些编辑对于将它们组合到一个提交中是没有意义的。值得一提的是,当我进行了大量需要重建和清理的黑客攻击时,我发现自己也处于类似的情况。我没有试图用git add-pgit-add-p
,而是在一个临时分支上提交大的更改,然后在“真正的分支”上重新开始进行更小、计划更好的更改。