如何安排VSS历史记录显示在代码中?

时间:2013-02-05 22:20:04

标签: c# vb.net tsql visual-sourcesafe

我最近需要在新项目的源代码中嵌入Visual Source Safe历史记录,根据我们在旧项目中的一些示例,其中历史出现在编码器放置了某些注释的位置。最终结果如下:

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
//$Archive: /UserManagementSolution.root/UserManagementSolution/UserDAL/Tems.cs $
//$History: Tems.cs $
//* 
//* *****************  Version 3  *****************
//* User: michaelc     Date: 1/31/13    Time: 9:44a
//* Updated in $/UserManagementSolution.root/UserManagementSolution/UserDAL
//
//
namespace UserDAL
{
    public class Tems

版本及其后面的两行由VSS放置。我知道VSS根据放置线的位置放置了历史记录:

//$Archive:  $
//$History:  $
//* 

请注意,VSS还会将VSS文件信息放在$ Archive和$ History段中。只需使用如图所示的美元符号告诉它信息的来源。

然而,当我实际检查代码(大约20个C#文件)时,VSS将历史记录放在WITHOUT注释字符中,从而打破了构建。这需要一些恼人的返工来评论这些线条。问题是,如何将VSS评论为历史记录?

1 个答案:

答案 0 :(得分:0)

我花了一些时间思考问题,然后突然想起srcsafe.ini文件中需要一些编码来告诉VSS将历史记录放在注释行中。

我找到了一个行为符合要求的项目的srcsafe.ini文件,并将其与我的新项目进行了比较。我在正确行为的.ini文件中找到了以下行:

Keyword_Masks = *.cs, *.sql
Shadow = 

[Keyword Comments] 
*.cs = "//"
*.sql = "--"

Keyword_Masks和Shadow关键字放在UseHelperService之后的.ini文件中。我想Keyword_Masks(用逗号分隔的值)告诉VSS哪些文件类型放置历史(我不知道Shadow表示什么,但是因为它出现在我们所有的项目中,我不想省略它并找出来它后来引起了一些巧妙的错误)。

新的[关键字评论]部分紧接着发生(在[时区]部分之前。这显然告诉VSS哪些字符用于行注释,以及哪种文件类型。

就这样做了!

请注意,如果您使用的是Visual Basic,则会将其编码为* .vb。明显。而且你不必包含Sql;在这种情况下,我们的VSS项目恰好包含了我们在VSS中保存的存储过程的解决方案和项目文件。