2

我最近在工作中发布了一个差异来审查委员会。直到之后我才真正检查差异,我注意到我的编辑器删除了行尾的空格。我想将这些空白更改拆分为单独的提交。我怎样才能做到这一点?

之后,我认为更新差异的最简单方法是实际上传差异。自从我提交以来,已经有很多提交,并且我已经重新设置基准(我们总是在这里拉 --rebase),所以仅仅使用猜测功能更新审查委员会可能不会真正奏效。

注意:我已经推送了。

4

2 回答 2

2

我不熟悉“审查委员会”,但这里有一个通用的 git 策略来回答这部分问题:

我想将这些空白更改拆分为单独的提交。什么是最简单的方法来做到这一点。

git checkout whitespace-fix
git reset --hard <sha of commit you posted diff of>
git reset HEAD~1
git add --patch .

现在暂存与空白问题相对应的大块(提示:使用“s”将呈现的大块分割成更小的块)。完成后,提交和变基,你的新提交就准备好了。

git commit -m 'Remove whitespace at end of lines'
git rebase master
于 2012-11-30T17:48:00.940 回答
1

我相信,为了解决当前的情况,意味着 -在 Review Board 中获得仅包含您的相关更改(而不是空间更改)的差异-最简单的事情是:

  1. 根据推送后获得的修订号重新创建差异(这样,您确保在再次将差异上传到审查委员会时没有相对路径问题)
  2. 通过编辑来清理差异并仅保留相关更改(取决于差异的大小,您有几个选择 - 简单的选择/删除或智能搜索和替换,reg.exp.等)
  3. 再次上传您的差异 (如果您想使用相同的审核请求,请使用更新差异功能,否则,只需创建一个新的审核请求)

这些应该可以解决问题。

另一方面...

我想您应该通过在您正在创建的差异文件中获取这些空格来解决这部分问题 - 当您查看代码修改的历史时,这会让人很痛苦地查看更改。
在这里,您可以检查很多东西,例如您正在使用的 diff 命令。

我希望这有帮助!

于 2012-11-30T17:16:55.257 回答