5

我正在编写一些执行 git-rebase 的脚本,并且需要识别何时发生冲突。

Git-rebase 对于每个错误都会以相同的退出状态终止,所以我不能使用它的退出状态来检测冲突。一个名为的目录rebase-apply是在冲突时创建的,但它似乎是一个我不能依赖的实现细节(例如,过去该目录具有不同的名称)。

是否有可靠的方法来检测 git-rebase 因冲突而终止?

4

2 回答 2

3

好吧,我刚刚意识到我可以运行git status --porcelain并检查是否有任何状态为“U”的文件。

于 2011-05-12T01:46:26.700 回答
0

不是编写 rebase 脚本,而是脚本 git cherry-pick 范围内的所有提交。无论如何,这就是 rebase 在幕后所做的。如果存在冲突,您可以采取适当的措施。

希望这可以帮助

于 2011-05-11T07:32:51.763 回答