【问题标题】:Delphi History - Source ControlDelphi 历史 - 源代码控制
【发布时间】:2010-10-04 02:29:54
【问题描述】:

在这里阅读了一些关于为单个开发人员使用源代码控制的优势的帖子后,在我看来,主要优势是我将对源文件的所有更改进行备份。 Delphi 有一个内置的历史函数,默认情况下会这样做。

这真的一样吗?还是我应该使用“真正的”源代码控制工具?

【问题讨论】:

  • Delphi 的历史不允许你标记一组文件

标签: delphi version-control


【解决方案1】:

delphi 历史记录是否对您的源代码进行了物理备份?

您确定您将永远不会让其他团队成员处理相同的代码吗?

Delphi 历史记录是否向您展示了谁对代码进行了更改?

这些只是我能想到的几个问题。如果你对他们的回答是肯定的,那么也许 delphi 历史对你来说就足够了。

【讨论】:

    【解决方案2】:

    Delphi 的历史是有限的(我认为是 10 或 25 份?)。那么,当您想进一步返回时会发生什么?

    版本控制还可以让您拥有更改集,例如在 SVN 中,您可以查看同时签入的其他文件。

    此外,源代码管理的所有其他优点都没有:分支、合并、标签等。

    【讨论】:

    • 最高可以设置为90。
    【解决方案3】:

    history 函数不会无限期地维护历史,你可能有一天会删除 __history 目录,无论是因为你认为它很粗糙,还是因为你正在归档项目等等。

    如果您曾经发布过您的源代码 - 即将其发送给第三方 - 您将希望能够跟踪您实际发布的内容。在源代码控制系统中,标签可以帮助解决这个问题;然后,分支可以让您将补丁应用到先前发布的版本,而无需进行扭曲,例如以不同程度的进步维护具有相同源代码的多个目录。

    【讨论】:

    • 对此+1,尤其是标签。我也是一个开发人员(大部分时间),在过去几年中,能够准确定位/重新创建进入特定版本的文件/代码非常有帮助。 (我使用 Team Coherence,它非常适合 Delphi)
    【解决方案4】:

    您应该将源代码保存在源代码控制系统中,delphi 历史记录功能太有限,无法防止灾难性的硬件故障。

    不过,delphi 的历史功能还是很有用的。当您在源代码控制中保留较大的更改时,您可以保留 delphis 历史中最近更改的简短历史。 我已将 delphi 设置为为每个文件保留 90 个历史记录条目,如果我正在编辑单个文件,这通常会给我 90 分钟的最新工作历史记录。您可以使用它来比较您最近所做的事情,恢复您认为不应该真正删除但您在上次签入后编写的旧代码,如果您的 pas/dfm 已损坏,则恢复最近的副本等等.

    因此,请将您的代码保存在源代码控制系统中(在另一台计算机上,最好在另一个物理位置),但不要忘记 delphi 历史记录,因为它很有用。

    【讨论】:

      【解决方案5】:

      我是一名开发人员,并且已经使用 Tortoise SVN 有一段时间了,并且发现它很有用。我在笔记本电脑上进行开发并在另一台计算机上拥有存储库,因此我在另一台计算机上备份了我的代码(我有时也会备份我的笔记本电脑)。我还发现我可以将我的代码检查到另一台计算机上并编译(在安装了一些第三方的零碎组件之后),这让我感到很欣慰。

      另一个明显的优势是存储库中的源历史记录,但大多数情况下我一直在使用 _History,因为我通常只想撤销微小的更改——我还没有做任何真正不称职的事情——但这只是一个时间问题;-)

      我还没有对我的代码进行分支/分叉,但我想我可能会在需要时开始研究这个问题(我有信心)。

      【讨论】:

        【解决方案6】:

        我有一系列关于版本控制的帖子,从 http://sourceitsoftware.blogspot.com/2008/07/starting-out-with-delphi-and-subversion.html 开始。我不回答你的问题,但在以后设置版本控制时可能会有所帮助。

        在我看来,使用 vcs(我就是其中之一)的独立开发者的主要优势是:

        • 异地备份(我使用网络托管工具)
        • 我可以轻松查看整个更改历史记录(delphi 是逐个文件的,这在查找版本 125 和 126 之间引入的错误时无济于事)
        • 能够维护应用程序的不同版本并轻松合并它们之间的更改(即,我正在一个分支中处理 v4,但我可以轻松地将我为 v3 所做的错误修复合并到另一个分支中)
        • 使推测性编程更容易。即我可以尝试一些东西,如果它不起作用,我可以轻松地恢复我的更改以恢复到工作版本
        • 提供审核日志/更改历史记录。当我发布新版本时,我可以将更改历史记录复制/粘贴到自述文件中

        这有点像单元测试。这需要一些时间才能进入,但一旦进入,它会让生活变得更轻松。

        AFAIC 是关于专业的。我不会为不使用 vcs 的公司工作,在雇用不使用 vcs 的程序员之前我会仔细考虑。

        【讨论】:

        • @SeanX:那篇博文中的介绍很好:“我总是对遇到的不使用版本控制的程序员数量感到不安”。不能再同意了。在我看来,Delphi 编辑器的历史完全被误导了。
        • 但是你回答中的“投机编程”这个词也让我有些担心。
        猜你喜欢
        • 2017-07-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-25
        • 1970-01-01
        • 2015-01-01
        相关资源
        最近更新 更多