哪个源代码控制使用“s”。在其文件名上加前缀?

时间:2013-11-09 22:41:37

标签: version-control

我找到了一些旧的源代码库,用于我需要复活的一些源代码。但我不知道使用了哪些源代码控制工具来生成和管理此源代码库。在目录中,所有文件都有一个“s”。前缀为文件名。在不知道这些文件中的格式的情况下,我无法以任何精确度手动提取源代码。即使我这样做,手动提取源代码也非常耗时且容易出错。

哪个源/版本控制系统的源文件前缀为“s”。什么时候将源文件存储在其存储库目录中?

如何从此存储库目录中有效地提取最新的源代码?

2 个答案:

答案 0 :(得分:2)

SCCS使用s。字首。但它可能不是唯一的一个!

我从来不知道这些知识会在某一天变得有用!

答案 1 :(得分:2)

s.前缀是SCCS(源代码控制系统)的特征。该代码可能仍然是专有的,但GNU有CSSC项目可以操作SCCS文件。它跟踪修订中的每个文件的更改,称为“增量”。

SCCS是POSIX的官方版本控制系统;你可以找到Open Group网站上记录的命令(但是那里没有指定文件格式,AFAICT):

POSIX未指定文件格式。 get的手册页说:

  

SCCS文件应为未指定格式的文件。

原始SCCS命令集包括一些POSIX未记录的额外内容:

  • cdc - 更改delta评论(用于更改delta的签入注释)
  • 梳子 - 合并,有效地合并增量
  • 帮助 - 没有前缀;当时没有任何其他help计划。命令会生成错误代码,例如cm3help解释它们。
  • sccsdiff - 文件的两个增量之间的差异

现在大多数系统都有一个命令sccs,它接受​​操作名称和选项。通常,文件放在./SCCS/子目录中,并根据需要从中提取,sccs前端将处理名称扩展,将s.SCCS/s.添加到开始文件名。

要提取最新版本的源代码,请使用get

get s.*
sccs get s.*

这些将获得每个文件的默认版本,默认默认值为文件的最新版本。

如果您需要进行更改,请使用:

get -e s.filename.c
...make changes...
delta -y'Why you made the changes' s.filename.c
get s.filename.c

请注意,文件“丢失”工作文件名的s.前缀,而不像RCS(版本控制系统)文件会丢失工作文件名的,v后缀。如果你没有遇到过这种情况,那么在70年代末或80年代早期创建SCCS和RCS时,接受它是不同的。