'cvs update -A' 不移动到主干 (1.x)

'cvs update -A' doesn't move to trunk (1.x)

全部,

我最近在 CVS 存储库中遇到了一些我从未见过的东西。其中有一个文件现在位于 1.1.1.7.2.3,开发人员希望将其合并回主干,通常 cvs upd -j。有一个 1.1 修订版,所以我们最终得到 1.2。但是,奇怪的事情发生了:

(432) $ cvs stat lsm_routines.F90
===================================================================
File: lsm_routines.F90  Status: Up-to-date

   Working revision:    1.1.1.7.2.3
   Repository revision: 1.1.1.7.2.3 /cvsroot/esma/esma/src/Components/GEOSland_GridComp/Shared/lsm_routines.F90,v
   Commit Identifier:   10058360F8865121B95
   Sticky Tag:      H54p3NL_RFCST_DEC (revision: 1.1.1.7.2.3)
   Sticky Date:     (none)
   Sticky Options:  (none)

(433) $ cvs upd -A
cvs update: Updating .
P GNUmakefile
P lsm_routines.F90
U update_model_paras.F90
(434) $ cvs stat lsm_routines.F90
===================================================================
File: lsm_routines.F90  Status: Up-to-date

   Working revision:    1.1.1.7
   Repository revision: 1.1.1.7 /cvsroot/esma/esma/src/Components/GEOSland_GridComp/Shared/lsm_routines.F90,v
   Commit Identifier:   cafGCp7ex2ZHRIRy
   Sticky Tag:      (none)
   Sticky Date:     (none)
   Sticky Options:  (none)

(435) $ 

注意,不是 1.1,而是 1.1.1.7。就像 HEAD 不是 1.x 分支的顶部而是 1.1.1.x 分支的顶部。呵呵

并非该目录中的每个文件都这样做;例如,GNUmakefile 的行为符合我的预期:

(444) $ cvs stat GNUmakefile 
===================================================================
File: GNUmakefile       Status: Up-to-date

   Working revision:    1.1.1.1.4.1
   Repository revision: 1.1.1.1.4.1 /cvsroot/esma/esma/src/Components/GEOSland_GridComp/Shared/GNUmakefile,v
   Commit Identifier:   LNjO62lYlJEM8V4z
   Sticky Tag:      Heracles-UNSTABLE-RanlibFix-ESMF7 (revision: 1.1.1.1.4.1)
   Sticky Date:     (none)
   Sticky Options:  (none)

(445) $ cvs upd -A
cvs update: Updating .
P GNUmakefile
P catch_constants.f90
P lsm_routines.F90
U update_model_paras.F90
(446) $ cvs stat GNUmakefile
===================================================================
File: GNUmakefile       Status: Up-to-date

   Working revision:    1.3
   Repository revision: 1.3 /cvsroot/esma/esma/src/Components/GEOSland_GridComp/Shared/GNUmakefile,v
   Commit Identifier:   jNHU505ZSv5uKViz
   Sticky Tag:      (none)
   Sticky Date:     (none)
   Sticky Options:  (none)

(447) $ 

1.x 是我期望的地方。

有没有人以前在 CVS 中见过这个?管理员方面有什么可以做的吗?需要翻转的一些奇怪的锁或属性?

马特

[1] 只是为了防止不可避免的事情发生:是的,我知道 CVS 很旧,应该迁移出去;我正在帮助将这个 repo 很快移动到 git,但目前,开发是在 CVS 中。

好吧,最后的答案似乎是:CVS 很奇怪。

我决定抛开谨慎,按照我通常会做的步骤进行操作,结果……结果是 1.2!尽管它说它是 1.1.1.7,但它承诺是 1.2。

耸肩

正如我所说,我们即将转向 git,所以,坦率地说,CVS 可能会变得有点奇怪,我不介意。