作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一个包含大量提交的功能分支。
A---B---C master
\
\-B'---C'---D'...---Z' feature
我正在处理功能
,但另一位开发人员创建了提交B
和C
。现在我想在提交 C
时对 feature
进行 rebase,但是我和/或 automerge 在 rebase 期间引入了错误。我的项目有很好的测试覆盖率,我可以使用 ant rebuild test
从控制台运行测试,现在我想让 git 告诉我哪个提交是第一个破坏我的测试的提交,这样我就可以修复它犯罪。我该怎么做?
最佳答案
当你在分支 feature
上时执行:
git rebase --interactive --exec "ant rebuild test" C
这将导致 git 在提交 C 时重新启动,在顶部重放您的工作,并且它将在重放阶段应用的每次提交后运行您的测试。
希望如果您的测试失败,您的 ant 任务将有一个非零退出代码。在这种情况下,一旦测试失败,git 就会停止。您立即处于正确的位置来修改您的提交,以便测试再次快乐。修改后,只需像往常一样执行 git rebase --continue
,git 将继续检查您的所有提交。
关于git - 如何在 rebase 期间为所有提交运行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21560896/
我是一名优秀的程序员,十分优秀!