2012-06-22 22 views
3

以下是具体步骤我在代码前检查始终遵循,不要破解构建 - 如何?

  1. 获得从SVN最新

  2. 合并有冲突的文件

  3. 构建

  4. 运行我的测试

  5. 入住登记

尽管如此,仍然有机会打破构建,如果有任何本地更改,我可能错过检查。我知道有一个持续集成服务器将解决此问题一劳永逸。但这是一个新项目,CI服务器尚未安装。

这里是我阅读的主题中的一些有用的文章。

如何绝对确保我不会打破建设有什么建议?

+1

尽管你尽了最大的努力和所有的预防措施,总有一个机会,你可以忘记一些东西,搞砸了一个构建。就像系统受到危害的可能性一样,尽管安全性很高。 Maven发布插件有一个“准备”目标,它可以检查你是否提交了所有本地修改(甚至是在你的版本控制下还没有添加的文件)。我不确定这是否会满足您的需求。我知道它会改变至少两个文件,你需要记住。 – carlspring

回答

2

Maven中没有这样的机制。这是你的生意,你正在做什么之后建立和你登记。即使有了CI,你也可以做任何你想做的事情,你只是很早就知道你打破了一个构建。它不会阻止你做错,它只是提供快速反馈。但是,当您尝试使用Maven进行发布(使用maven-release-plugin)时,它会检查是否存在一些未被更改的更改,因此您可以确定与版本相关的构建是否正常,这非常重要。但在我看来,只是定期构建它并不那么重要。

+0

对于我来说,确保每次登记时构建都很好,这对我来说真的很重要,因为我在分布式团队中工作,如果我犯了一个错误并回家,那么另一边的人世界有一个真正糟糕的一天试图修复我的代码。 – gresdiplitude

+0

那么,在这种情况下只需安装一个CI服务器。如果这是一个开源项目,您可以从cloudbees.com为您的github项目托管免费的Jenkins。 – carlspring

+0

因此引入持续集成。即使在你的本地主机上,如果你不能在你的项目的基础设施内完成它(但事实上它只是几分钟)。正如我所说,我不相信有一种工具会迫使你检查所有需要成功构建的东西。获取Jenkins,在几分钟内完成设置并配置,以便它使用自己的SVN工作区。 –

2

尽管这一切,还有我可能会打破 构建,如果有,我可能会错过 任何地方的变化

检查可以检查你的工作机会提交后通过svn status命令复制。这将减少忘记添加和提交到存储库的机会。

2

有没有简单的方法来确保。提交时总会犯错。这些规则有助于将风险降到最低

  • 养成“始终承诺一切”的习惯,即:不要保留本地更改,也不要在同一工作副本中处理两个任务。

  • 提交之前,检查未版本控制的文件。

  • 在构建服务器和开发人员机器上保持构建过程完全相同。

+0

+1好答案,谢谢 – gresdiplitude