如何在TortoiseSVN上设置自动版本控制



我正试图为我正在进行的项目在TortoiseSVN上设置一个自动版本更新。这非常简单;该代码应该拉动SVN修订并显示日期&无论何时有人从回购进行签出/更新。

下面我有一个模板类

public static class SvnRevision
{
/// <summary>
/// SVN repo revision
/// </summary>
public const string REVISION = "$WCREV$";
/// <summary>
/// SVN repo location
/// </summary>
public const string REPOSITORY_URL = @"$WCURL$";
/// <summary>
/// SVN repo date
/// </summary>
public const string REPOSITORY_DATE = "$WCDATE$";
}

我想知道让这个程序运行所需的背景步骤。如果有人能提供一个演练或教程,我们将不胜感激。我正试图在Visual Studio 2022上做到这一点。

我使用这个类向SVN进行了提交,但没有任何运气,搜索表明我需要设置版本控制,并提供一些我不知道如何做的源/目标文件。下面是我引用的链接。

https://docs.huihoo.com/tortoisesvn/1.5.7-en/tsvn-subwcrev-keywords.html

在为您的任务选择The Right Thing(tm(和|或使用SubWCRev(根据使用的SubWCRev特定关键字,您尝试使用它(之前,您必须了解

  1. 阅读更新的最佳(实际上,唯一正确的地方(,与关于SubWCRev的最新发布文档相关的是TortoiseSVN网站
  2. "。。。每当有人从回购进行结账/更新时;拥有你的回购WC的人有更自然的方式来了解他/她得到了哪个修订以及从哪里得到的:普通svn info告诉它,而不是阅读你的代码或编译它以查看带有收集数据的message-box
  3. 与SVN关键字相反,SVN关键字从一个框中工作(当插入到文件中时(并在动态中自动更新,subwcrev的关键字必须具有";释放";stage(读取文档(:您在模板文件中插入关键字,经过SubWCRev处理后,将生成新文件,其中模板占位符由数据替换,仅在此时实际,在WC更改后不会自动更新(您必须再次刷新模板中的文件(

在您的情况下,您可以

  • 使用所有需要的关键字将public static class SvnRevision移动到somename.cs.tpl
  • 编译链中的所有其他步骤之前添加对SubWCRev的调用,smth.likeSubWCRev.exe pathtoWC somename.cs.tpl somename.cs
  • 在您的代码中,使用对somename.cs的引用,这些引用也必须在svn中忽略并且不进行版本控制,而模板必须进行版本控制

HTH

感谢大家的帮助。我的问题可能不清楚,或者我做错了,但问题是我需要将命令行设置为预生成事件,以便SVN关键字能够更新。

预构建事件命令行:"C: \Program Files\TortoiseSVN\bin\SubWCRev.exe"quot$(ProjectDir("quot$(ProjectDir(SvnVision_Template.cs"(ProjectDir(SvnRevision.cs">

最新更新