我正在尝试执行提交应该在rails项目中通过所有测试以成功自动化。
问题是我在提交之前使用git add --patch
并且我希望我的测试只能在分阶段的更改上运行。
解决方案1:
在预提交上执行git stash --keep-index
或在提交后执行简单git stash
,然后执行钩子(rake tests
)和git stash pop
。
这意味着我将不得不等待它完成,当它运行时,我将无法访问我的未分级更改。
解决方案2:我设置了一个新的本地仓库(测试人员)并设置了第一个仓库(开发)的post-commit钩子以推送到测试人员仓库。测试器仓库应该有一个后接收挂钩来运行测试,并通知我(通过电子邮件或whateva)我是否通过或无法修复提交。
第二种解决方案听起来好多了(我猜),即使由于被忽略的文件而存在回购差异。
您是否有其他建议解决方案?
答案 0 :(得分:1)
看一下git-new-workdir(你可以在git repository contrib / workdir中找到它)。它创建了一个可用于运行测试的新工作目录。
答案 1 :(得分:0)
我终于使用 Solution 2 ,然后演变成迷你连续测试系统。