门控签入/ GIT中预先测试提交? [英] Gated check-ins / pre-tested commits for Git?

查看:273
本文介绍了门控签入/ GIT中预先测试提交?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我期待在从TFS(团队基础服务器)到Git的迁移,但无法找到任何符合TFS'的门检入(也叫预测试或延迟提交)的支持。

I'm looking at migrating from TFS (Team Foundation Server) to Git, but can't find anything matching TFS' support for gated check-ins (also called pre-tested or delayed commits).

Atlassian的竹子有门控签入的支持。 TeamCity的不支持它(延迟提交的使用他们的术语),但不为GIT中。詹金斯使用自己或詹金斯+格里特具有巨大的缺点,不来接近TFS门控签入功能。 (缺点在这段视频中解释詹金斯本人的创造者: http://www.youtube.com/watch?v=LvCVw5gnAo0

Atlassian Bamboo has no support for gated check-ins. TeamCity does support it ("delayed commits" using their terminology), but not for Git. Using Jenkins by itself or Jenkins+Gerrit has huge drawbacks and doesn't come close to the gated check-in functionality in TFS. (Drawbacks explained by the creator of Jenkins himself in this video: http://www.youtube.com/watch?v=LvCVw5gnAo0)

Git是(有很好的理由)很受欢迎,所以如何解决人这个问题?什么是目前最好的解决方案?

Git is very popular (for good reason), so how are people solving this problem? What is currently the best solution?

推荐答案

用git我们才刚起步,并使用工作流的提交已实施预先测试(我完成了测试此就在今天)。

We have just started using git and have implemented pretested commits using workflows (I finished testing this just today).

基本上每个开发具有他们所读/写访问个人资料库。在我们的情况下,构建服务器的TeamCity,建立使用这些个人资料库,然后如果成功推动改变'绿色'仓库。开发者必须绿色,只有TeamCity的生成代理没有写入权限可写的,但开发者拉离绿色共同更新。

basically each dev has a personal repository which they have read/write access. The build server TeamCity in our case, builds using these personal repositories, and then if successful pushes the changes to the 'green' repository. Devs have no write access to 'green', only TeamCity build agents can write to that, but devs pull common updates from 'green'.

所以,开发从绿色拉,推动个人,TeamCity的从个人的建立,推动绿色。

So dev pulls from 'green', pushes to personal, TeamCity builds from personal, pushes to green.

这个博客帖子展示了我们所使用的基本模式,以GitHub上叉的个人资料库(用叉子意味着库的数量不失控和最终花费更多,意味着开发人员可以管理个人版本,因为他们可以叉,然后创建团队我市建设工作得到他们的代码推到绿色):

This blog post shows the basic model we are using, with GitHub forks for the personal repositories (using forks means that the number of repositories doesn't get out of hand and end up costing more, and means that the developers can manage the personal builds, as they can fork and then create the team city build jobs to get their code pushed to 'green'):

这更多工作TeamCity的设立为每个开发者都有自己的生成配置。这实际上已经为2配置,TeamCity的似乎执行所有生成步骤(包括最后的推动绿色'步),即使以前的版本步骤失败(如测试:)),这意味着我们必须有个人打造为开发者,那么另一个版本的配置这是依赖于,这将只是做推假设构建工作。

This is more work to set up in TeamCity as each developer has to have their own build configuration. Which actually has to be 2 configurations as TeamCity seems to execute all build steps (including the final 'push to green' step) even if the previous build steps fail (like the tests :)), which meant that we had to have a personal build for the developer, then a another build config which was dependent on that, which would just do the push assuming the build worked.

这篇关于门控签入/ GIT中预先测试提交?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆