CVS脚本自动添加,删除和提交

时间:2009-01-30 18:51:24

标签: cvs

我正在寻找一个脚本,它获取CVS模块的工作副本,执行任何必要的“cvs add”和“cvs remove”命令,并提交所有内容。最终结果是存储库副本变得与工作副本完全相同。

我想我以前见过这样的东西,但我在Google上找不到它。有没有人有他们用过的类似剧本?我知道我可以运行“cvs -nq update”并自己解析结果,这就是我最终可能会做的事情。但是CVS有各种奇怪的边缘情况,所以我想找到一个已经测试过的脚本(如果存在的话)。

1 个答案:

答案 0 :(得分:1)

我写了类似于WinCvs的宏,它仍然与它捆绑在一起。您可以在Macros | CVS | Copy to branch / trunk ...

下找到它

它会提示您输入一个分支名称以将当前选择复制到(如果您希望将其复制到主干,则只留空)然后进行所有必要的准备,除了最终提交之外。

我自己只在实践中使用了几次,但它已经存在了几年了,我没有任何抱怨......

来自docstring:

  

======
    用法:

     
      
  • 选择一个或多个CVS控制的文件或文件夹。

  •   
  • 从宏| CVS菜单运行宏。

  •   
  • 输入要将选区复制到或只是的分支的名称    如果要复制到HEAD,请单击“确定”。

  •   
     

=============
  已知问题/“Un-niceties”:

     
      
  • 复制分支上添加的单个文件时自动执行    添加将无法正常工作,因为CVS将假定该目录的标签    将是不正确的(这导致“foo.txt独立地添加了一个    第二方“错误消息”。    通常最好在目录选择上使用宏。

  •   
  • .cvsrc文件中的update -P可能会破坏娱乐   的    文件夹添加在分支上,所以我明确禁用.cvsrc和   组    压缩固定为-z7(合理的IMO)。所有其他.cvsrc   选项    将失去。

  •