成功构建时自动提交(“breadcrumbs”)?

时间:2012-11-22 15:19:07

标签: android git intellij-idea continuous-integration build-automation

有没有人知道在IDE中成功构建之后是否有自动提交项目(目录)的方法?这就是:类似于连续集成系统,更轻松,更适合低级仪式,“独立开发”场景。

我对任何可以与IntelliJ IDEA(社区版)和GIT for Android项目(Java / Ant / Maven)一起使用的解决方案特别感兴趣,但我也对其他解决方案感兴趣(Eclipse,Netbeans,SVN,Hg)等)。我也对这个主题的更一般的讨论感兴趣(这是一个好/坏的想法,它可以通过这种方式或其他方式完成等)。

我也对基于代码的解决方案(脚本,插件等)持开放态度。特别是,是否有人知道IntelliJ IDEA是否在菜单命令之前/之后为执行脚本提供了任何“钩子”?

理由:我正在使用IDEA在现有的Android项目上进行一系列小型(但痛苦的)实验,我希望能够在需要时使用GIT逐步返回(每一步都是由之前的成功构建之一代表)。如果你愿意,可以称之为“breadcrumbs programming”。

请注意:我知道这可以通过命令行中的Ant / Maven / GIT / many-other-tools轻松获得。我只是想看看是否可以从我习惯的任何IDE中做到这一点。是的:我知道我应该经常承诺。我做到了我只是厌倦了手工做。

1 个答案:

答案 0 :(得分:0)

好的,看起来IntelliJ IDEA可能无法实现这一点,即使自2007年以来有一个非常相似的功能请求正在休眠:http://youtrack.jetbrains.com/issue/IDEABKL-5755

只要我看到,由于其“Builders”对话框,目前唯一提供用于在其自己的GUI 中执行预/后构建脚本的钩子的IDE是Eclipse: / p>

Eclipse adding your own build command

IDEA和NetBeans都依赖Ant目标(仅限)这种前/后构建处理任务。请参阅:https://ant.apache.org/manual/Tasks/exec.html

不幸的是,Ant和GIT之间还没有真正的集成(即使那里有一些项目),所以要么你必须依赖OS命令(进程分支),要么你可以尝试使用JGit( http://eclipse.org/jgit/)。

另一种可能的解决方案是修改现有的IDE GIT插件,使其能够接受提前/提交后任务或脚本(Eclipse,NetBeans和IDEA使用插件与GIT交互)。

最有可能的是,对于手头的任务,我将依靠我的(旧的和疲惫的)手或Ant脚本。

在任何情况下,恕我直言,执行这种自动提交的“正确”方式如下:

  1. 构建项目(通过Ant / Maven或通过IDE内部构建系统)
  2. 向用户询问提交消息(或根据日期和时间生成消息)
  3. 提交源树
  4. 当然,失败的构建应该中止剩余的操作。

    这将/应该/不应该取代正常的,手动执行的提交流程。它应该补充它(可能使用分离的GIT本地存储库或分离的分支)。