我怎样才能自动接受git rebase --interactive给我的内容?

时间:2010-08-23 14:51:58

标签: git

我正在使用一个小脚本来修复过去的提交。该脚本假定已经暂停了对已损坏提交的修复,工作目录是干净的,并且在命令行上传递了损坏的提交。这是脚本的原始Python核心:

#!/usr/bin/env python
import os
import sys

broken_commit = sys.argv[1]

logmsg = os.popen( "git log --format=%%s %s~1..%s" % ( broken_commit, broken_commit ), 'r' ).read().strip()
os.system( "git commit --message \"fixup! %s\"" % logmsg )
os.system( "git rebase --interactive --autosquash %s~2" % broken_commit )

此时,我看到了一个编辑器,只需要确认(在我的情况下为:wq)显示的更改。我怎样才能避免这最后一步?我希望git rebase行继续下去,而不会让我有机会编辑显示的步骤。

我听说你可以通过EDITOR环境变量设置特殊脚本来实现。但是,我在Windows上使用msysGit,所以我在这方面有点受限。

1 个答案:

答案 0 :(得分:5)

在运行EDITOR之前将环境变量true设置为git rebase会使其自动接受所显示的更改。