我刚开始在持续集成环境(TeamCity)中工作。我明白了在代码中没有被抽象出来的基本思想,即你永远无法构建它来测试功能等。然而,当深度编码发生时,偶尔需要几天时间才能获得可构建的代码 - - 但在其他团队成员可能需要查看我的代码。如何与持续集成共享代码
如果我检查代码,它打破了构建。但是,如果我不检查它,我的团队成员无法看到最近的工作。我想知道这种情况最好如何处理。
我刚开始在持续集成环境(TeamCity)中工作。我明白了在代码中没有被抽象出来的基本思想,即你永远无法构建它来测试功能等。然而,当深度编码发生时,偶尔需要几天时间才能获得可构建的代码 - - 但在其他团队成员可能需要查看我的代码。如何与持续集成共享代码
如果我检查代码,它打破了构建。但是,如果我不检查它,我的团队成员无法看到最近的工作。我想知道这种情况最好如何处理。
类似Code Collaborator(Google链接,smartbear.com已关闭..)的工具可让您的同事看到您的代码,而无需提交。相反,您只需提交它以供审核。
虽然它对运行它有点额外的麻烦。
或者,您可以设置一个第二个分支 /您的代码分支供您使用,您的同行可以同步到该分支,并且不会中断生成服务器。当你在自己的分支中完成工作时,你可以将它与主线/中继/任何东西合并。
在团队环境中,任何人在几天内都处于不可生存状态通常是非常不可取的。我尝试将大量代码分发到尽可能多的可建立的签入。至少,即使你没有准备好实现,也要创建并检查你的接口,以便其他人可以开始对它们进行编码。
为什么它是不受欢迎的? – alchemical 2010-02-25 23:14:53
@LuftMensch由于无法构建,任何人无法检查其代码的时间越长,应用程序就会变成“staler”。代码不同步,最终的代码合并变得更加复杂和容易出错。 – 2010-02-27 02:33:26
嗯,好的,我会考虑的。 – alchemical 2010-03-01 17:48:51
持续集成的一个主要优点是它可以告诉你什么时候什么事情发生了,什么时候事情得到解决。如果您犯下那些破坏系统的代码,其他开发人员将会在继续开发之前被迫使其进入工作状态。这是一件好事,因为它不允许在破碎的事物上进行代码更改(这可能会导致问题出现在同事代码在破坏的系统上工作,但在初始中断修复后不起作用) 。
这也是一个很好的时间使用分支/叉子的简单例子,并且当所有破碎的东西都被修复时,简单地合并到树干。
我不确定我是否同意“强迫他人修复它”的评论 - 当然,问题是如果你破坏了它,你会修复它? – Klelky 2010-02-25 10:48:36
我在这里完全一样的情况..作为建筑工程师,我的工作很精美。
首先,让我分解分支/项目。 @Dolph Mathews已经提到了分支和tbh,这是让你的设置工作的一个重要部分。
你现在有你的3层设置.. - 开发者踢启动远程运行从他们对他们的项目桌面提交前的版本。如果它通过,它会被检入到存储库中,即branch_team_a - 项目组A在多次签到后通过;此时您将您的更改从branch_team_A集成到主分支 - Project Main build!
如果一切都成功,那么你有一个候选人发布..如果一个部分失败,项目a,b或c。它不会被检入到main中。这一直是我久经考验的方法,每次都有效。它还大大提高了团队沟通。
+1分支建议。 – 2010-02-25 03:05:00