【问题标题】:How to configure Auto Commit in build step如何在构建步骤中配置自动提交
【发布时间】:2018-06-26 18:01:40
【问题描述】:

我正在使用带有 IntelliJ 的 TeamCity 插件并使用以下工作流程:

https://confluence.jetbrains.com/display/TCD10/Pre-Tested+%28Delayed%29+Commit

我担心这个过程是否可以以最后一步“如果构建成功则提交我的本地补丁”的方式自动化,并且该步骤将在 TeamCity 端而不是在我的本地笔记本电脑上完成。

我可以在构建中添加一些额外的步骤,上面写着“如果构建成功将这个补丁提交到 SVN”(来自 TeamCity 服务器)

感觉服务器需要与我的笔记本电脑保持连接直到构建结束的方式是错误的。

由于网络故障、身份验证失败、文件有其他修订等,它会导致很多提交失败。

【问题讨论】:

    标签: java svn intellij-idea version-control teamcity


    【解决方案1】:

    这种设置是不可能的,因为 TeamCity 不知道您的本地版本控制凭据和设置,这些凭据和设置将在 IDE 提交期间使用。

    【讨论】:

    • 你知道其他允许这种行为的 CI 工具吗?
    • @hagai 不,不幸的是。允许 CI 服务器代表您提交文件通常是一个有问题的决定,原因有多种:安全性、环境一致性和工作副本更新状态。想象一个 TeamCity 代表您提交 35 个文件。之后你会不乐意更新你的工作副本
    • 我同意这里的安全性可能是一个问题。我不知道“TeamCity 可以提交许多文件”的问题是什么,如果其他开发人员也这样做有什么区别?我最终得到了相同的状态 - 需要拉新更改的过时回购。无论如何,我在这里谈论的是一个团队回购,所以显然每天都会继续提交。
    • @hagai 我的意思是,如果 TeamCity 提交了您自己的更改,那么您将与下一次更新有很大的冲突,因为 SVN 将尝试将带有更改的补丁应用到已经包含未提交的补丁的工作副本
    • @hagai 此设置在此处的另一个 stackoverflow 答案中进行了描述:stackoverflow.com/a/12484596/295582
    猜你喜欢
    • 2017-01-03
    • 2018-08-19
    • 1970-01-01
    • 2017-05-12
    • 1970-01-01
    • 2012-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多