代码之家  ›  专栏  ›  技术社区  ›  dnndeveloper

svn externals将源目录更改为目标目录

  •  1
  • dnndeveloper  · 技术社区  · 16 年前

    我使用的是SVN 1.6,有没有可能有:?

    source directory
    shared\code\depends\make1.3
    - contains file make.1.3
    
    target directory
    trunk\make\
    - i want make.1.3 in trunk\make\
    

    从上述源到目标有一个外部SVN
    我试过了

    /shared/code/depends/make1.3 make
    

    当我进行更新时,会收到错误:

     External failed, working copy is locked, please execute cleanup command.  
    

    执行清理之后,仍然存在相同的问题。

    3 回复  |  直到 16 年前
        1
  •  1
  •   Community Mohan Dere    8 年前

    这个问题可能与您想要更改一个不相交的路径(外部引用的路径)的事实有关,而您可能只完成了来自另一个路径的最后一次提交。

    正如 Svnbook

    颠覆仍然只对非互不分离的工作副本有效。
    因此,例如,如果您希望提交在一个或多个外部工作副本中所做的更改,则必须在这些工作副本上显式运行SVN COMMIT,主工作副本上的提交将不会重新出现在任何外部副本中。

    你可以在新结帐的时候试试同样的发型。
    必须确保不要删除/更新make1.3目录的内容,否则需要 svn revert 到原始内容(请参见 SO answer )

        2
  •  0
  •   VonC    16 年前

    我找到了答案,要在从源目录到目标目录的单个文件上使用externals,请使用:

    source directory
    shared\code\depends\make1.3
    - contains file make.1.3
    
    target directory
    trunk\make\
    - i want make.1.3 in trunk\make\
    

    :

    /shared/code/depends/make1.3/filename.txt filename.txt
    

    上面的外部命令将把单个文件放在trunk\make\filename.txt中。

        3
  •  0
  •   jame    16 年前

    谢谢。只是想补充一点,在第1.6.6版(发布时还未发布)之前,存在一个bug,阻止二进制文件以指定的dnndedeveloper方式单独处理。