【问题标题】:Why would a site display SVN version and what are the advantages?为什么站点会显示 SVN 版本,有什么优势?
【发布时间】:2010-10-29 04:08:38
【问题描述】:

到目前为止,我还没有使用过 SVN。为什么网站(例如 Stack Overflow)会在底部显示 SVN 版本?它是什么版本?公开展示有什么好处?

alt text http://shobankr.googlepages.com/so.jpg

【问题讨论】:

  • 我已经编辑了这个问题,希望它能满足那些本能反应是关闭任何提到 Stack Overflow 的东西的人。该问题不属于针对错误报告和功能请求的 UserVoice。这是一个完全有效的问题,不需要是特定的,我不需要太多的想象力或努力就可以相应地对其进行编辑。
  • @ian Quingley,那是哪个问题? :) 你在哪里投反对票?
  • 有人问关于将参数传递给存储过程的问题。我没有投反对票!

标签: svn version-control versioning


【解决方案1】:

这样当用户抱怨时,支持人员可以询问他是什么版本。用户可能会发现问题,然后更新站点软件并且他的抱怨不再相关,因此开发人员将浪费时间尝试重现。

该数字是 SVN 修订号。它从零开始,并在 SVN 存储库的生命周期内随着每个源代码添加/更新而自动递增。知道这个数字,就很容易获得完全处于相应状态的完整源代码 - 存储库有一个方法。

【讨论】:

    【解决方案2】:

    在传统软件上,您有 1.0、1.1、2.0 等版本号,主要用于支持和营销目的。

    在网站上,通常没有版本号的概念,因为它们通常比“传统”软件更频繁地更改。此外,有时只是“架构”更改,例如“这里稍微优化,那里稍微清理” - “传统”软件中也会发生更改,但通常不保证发布新版本(并增加版本从 1.0 到 1.0.1)

    因此,StackOverflow 决定使用其源代码控制中的修订号(即 Subversion,但每个源代码控制系统都有一些数字来识别签入),而不是每两天增加一些任意数字。

    【讨论】:

    • 谢谢。这个版本号是自动生成的还是通过设置生成的?我们如何跟踪此版本更改并获取此版本的文件?
    • 版本由存储库本身自动递增。存储库接口具有检索给定修订号的所有源的方法。
    • 源代码存储库实质上保留了文件所有版本的副本。如果您对文件进行了 3 次更改,则该文件共有 4 个版本(原始、第一次更改、第二次更改、第三次更改)。每个对存储库的签入/提交都会增加它的编号。因此,如果我有版本 1 并添加一个文件,则存储库将是版本 2。我更改文件,存储库是版本 3 等等。所以数字会自动增加,并且可以轻松查询以进行显示。
    【解决方案3】:

    它提供了一个简单、明确的版本号,无需任意决定任何给定代码推送的版本。

    【讨论】:

      【解决方案4】:

      发布修订号的另一个原因是为了帮助您进行测试。如果您正在追踪错误或测试发布候选版本,显示修订号可以避免您对当前正在测试的版本感到困惑。

      【讨论】:

        【解决方案5】:

        如果您使用 CruiseControl.Net,您可以使用以下命令将 .state 文件的 SVN 修订捕获:http://code.google.com/p/svnrevisionlabeller/

        然后查询状态文件中的 XML 并将其显示在您想要的位置。

        XDocument stateFileRoot = XDocument.Load("path-to-state-file");
        
        var q = (from label in stateFileRoot.Descendants("Label")
                 select (string)label).SingleOrDefault();
        
        if (q != null)
        {
            result = q.ToString().Substring(0, q.LastIndexOf(".")); // lop off last digit
            HttpContext.Current.Application["BuildLabel"] = result;
        }
        

        (在这种情况下,我将其放入缓存中以便于访问和性能。)

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-09-19
        • 2012-12-19
        • 2010-09-08
        • 1970-01-01
        • 1970-01-01
        • 2012-11-30
        • 1970-01-01
        • 2010-09-06
        相关资源
        最近更新 更多