在我暂存文件之前,我喜欢执行git diff
检查一切正常。当我垂直遍历差异时,我会记录每个文件,这对于分段是“正常的”。如果它是一个特别长的差异,我发现很难跟踪哪些是好的,所以我倾向于在不同的时间间隔退出差异并且尽我所能。这有点乏味。
有没有办法改善这个工作流程?显然,人们不应该首先让他们的差异变大,但有时事情就不会那样(例如,改变多个文件中调用的方法的方法签名)。
例如,是否可以将当前活动git diff
“会话”的“顶部”到您所在差异中的当前点的所有内容进行分段?通过这种方式,我可以在不退出差异的情况下继续进行分组并失去思路。
答案 0 :(得分:2)
请尝试使用git add -p
。它会显示每个差异,并询问您是否要添加它们。
答案 1 :(得分:2)
您可以使用部分添加来执行此操作:
git add -p
它将引导您完成文件的不同深度,让您按照自己的意愿进行演示或忽略。
答案 2 :(得分:0)
使用:
git add --interactive
我在〜/ .bashrc中为它做了一个别名:
alias gi='git add --interactive'
了解如何将git add -i发挥到极致。它现在是我日常工作流程的一部分,这是我最喜欢git的东西之一! :)
其他答案隐藏了git add -i的其他优点:
-p, --patch Interactively choose hunks of patch between the index and the work tree and add them to the index. This gives the user a chance to review the difference before adding modified contents to the index. This effectively runs add --interactive, but bypasses the initial command menu and directly jumps to the patch subcommand. See “Interactive mode” for details.