我正在尝试提交应该通过所有测试以在我的 Rails 项目中成功实现自动化。问题是我git add --patch
在提交之前使用了很多,我希望我的测试只在分阶段的更改上运行。
解决方案 1:git stash --keep-index
在 pre-commit 上
做一个或git stash
在 post commit 上做一个简单的操作,然后是钩子 ( rake tests
) 和git stash pop
. 这意味着我必须等待它完成,并且在它运行时,我将无法访问我未暂存的更改。
解决方案 2:我设置了一个新的本地 repo(测试人员)并从第一个 repo(开发)设置了 post-commit 挂钩以推送到测试人员 repo。测试者 repo 应该有一个 post-receive 挂钩来运行测试并通知我(通过电子邮件或 whateva)在我推送之前它是通过还是未能修复提交。
第二种解决方案听起来要好得多(我猜),即使由于文件被忽略,存储库会有所不同。
您还有其他解决方案要提出吗?