gpt4 book ai didi

git 在提交之前删除新文件中的尾随空格

转载 作者:IT王子 更新时间:2023-10-29 00:39:41 27 4
gpt4 key购买 nike

我知道可以使用预提交 Hook 来删除尾随空格。我有兴趣手动进行。我在这里阅读了问题:
Make git automatically remove trailing whitespace before committing - Stack Overflow
最接近我想要的答案是 the "automatic version" from ntc2 :

(export VISUAL=: && git -c apply.whitespace=fix add -ue .) && git checkout . && git reset


该命令运行良好,除了它似乎仅适用于对存储库中已有文件的更改,而不适用于新文件。我有一堆新文件,这意味着它们还没有在 repo 中。我想从这些文件中删除空格,所以我尝试添加 -A 而不是 -u,但这并没有什么不同。

最佳答案

要手动清除最后 3 次提交中的空白,您可以这样做:

git rebase --whitespace=fix HEAD~3

当我在主题分支上工作时,我会跟踪上游分支(通常是这样创建的)

git checkout -b topic -t

这允许我从 git rebase 中删除最后一个参数。因此,一旦我完成并准备好 merge ,我就可以使用以下方法快速清理整个主题分支:

git ws # 别名为 rebase --whitespace=fix

请注意,与 HEAD~3 示例不同,如果它发生更改,这实际上会将您的更改基于上游分支! (但这也是我想要的,在我的工作流程中。)

关于git 在提交之前删除新文件中的尾随空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19151940/

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