清理源树

时间:2009-04-20 12:00:44

标签: .net continuous-integration open-source

清理源树时删除的常见内容是什么?例如:

  1. 删除bin / obj / debug / release目录
  2. 删除临时/缓存文件,例如ReSharper缓存文件
  3. 删除源控制文件/目录,例如_svn和.svn
  4. 此外,您通常对源代码树执行哪些操作?例如:

    1. 将其拉出来存档
    2. 通过电子邮件发送给感兴趣的各方
    3. 我问的是,我一直在研究基于Jeff Attwood的CleanSourcesPlus的工具。

      该工具名为 Tree Trim ,可以在http://code.google.com/p/treetrim/下载

5 个答案:

答案 0 :(得分:3)

要做1 - 3,我只是从Subversion执行导出

答案 1 :(得分:0)

使用TortoiseSVN的导出命令将从源树中删除所有_svn / .svn文件夹。我不知道这是否有帮助。

答案 2 :(得分:0)

我们在Tortoise SVN中有一个排除政策,以阻止垃圾进入那里。

Bin bin Obj obj~ * * .bak * .tmp * .suo * .user PrecompiledWeb

答案 3 :(得分:0)

我使用MSBuild来automate从SVN repo,building&完全压缩一切。所以一切都归结为运行PrepareDownloads Release两次 - 因为MSBuild如何运作。

答案 4 :(得分:0)

构建过程应该是自动化的,以便您可以在命令行上使用一个命令执行所有这些操作。

如果我想将当前的开发版本放在一起(假设没有持续集成系统已经这样做了),我说mvn clean package将自动下载所有库依赖项,构建软件,运行所有在整洁的ZIP文件中测试和组装relase工件。使用Maven配置自动构建过程可能需要几个小时(如果Maven对您来说是新的,那么更少,如果您可以从其他项目中复制配置模板,则会更少),但之后只需要命令上的一个命令线。

在发布新版本时,我运行mvn release:prepare来增加版本号并标记源代码管理中的版本,之后我从源代码管理中导出新代码并使用mvn clean deploy构建它它将汇集工件并将它们上传到Web可访问的存储库。