svn merge:“目标路径不存在”

时间:2011-04-23 13:59:47

标签: svn merge

对于我以前做过一百次的事情,我把头发拉了出来。我有一个子项目'a'的发布候选分支,我们做了最后一分钟的更改。现在我们已经发布了,我需要把它们带回主干。

我cd到我的主干工作副本,然后运行:

$ svn merge https://svn.server.com/svn/branches/a/release
svn: Target path '/branches/a/release' does not exist

什...?分支和主干副本都绝对存在。事实上,它们几乎相同。可能会遗漏什么?

以下是更多背景信息:

$ pwd
~/working-copy/trunk/a
$ svn info
Path: .
URL: https://svn.server.com/svn/trunk/a
Repository Root: https://svn.server.com/svn
Repository UUID: 32d33e3d-8f82-497d-945e-c2c79703d92c
Revision: 5570
Node Kind: directory
Schedule: normal
Last Changed Author: me@mycompany.com
Last Changed Rev: 5560
Last Changed Date: 2011-04-22 17:41:34 -0700 (Fri, 22 Apr 2011)
$ svn info https://svn.server.com/svn/branches/a/release
Path: release
URL: https://svn.server.com/svn/branches/a/release
Repository Root: https://svn.server.com/svn
Repository UUID: 32d33e3d-8f82-497d-945e-c2c79703d92c
Revision: 5570
Node Kind: directory
Last Changed Author: me@checkpoints.com
Last Changed Rev: 5542
Last Changed Date: 2011-04-22 12:00:49 -0700 (Fri, 22 Apr 2011)


$ svn merge https://svn.server.com/svn/branches/a/release
svn: Target path '/branches/a/release' does not exist
$ svn ls https://svn.server.com/svn/branches/a/release
.svnignore
build/
build.xml
change_log.txt
docs/
libs/
release_procedure.txt
src/
$ svn merge https://svn.server.com/svn/branches/a/release .
svn: Target path '/branches/a/release' does not exist
$ cd ..
$ svn merge https://svn.server.com/svn/branches/a/release a
svn: Target path '/branches/a/release' does not exist
$ svn --verbose https://svn.server.com/svn/branches/a/release a
Subcommand 'merge' doesn't accept option '-v [--verbose]'
Type 'svn help merge' for usage.

$ svn --version
svn, version 1.6.15 (r1038135)
   compiled Feb 26 2011, 21:56:07

Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.apache.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository access (RA) modules are available:

* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
  - handles 'http' scheme
  - handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
  - with Cyrus SASL authentication
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme

我还尝试按照here使用--ignore-ancestry,但尝试重新插入现有文件时发生冲突失败。

1 个答案:

答案 0 :(得分:5)

如果我限制了我的发布号码,合并就有效:

$ svn merge -r XXX:HEAD https://svn.server.com/svn/branches/a/release

其中XXX是我从trunk复制/合并到分支的最后一个修订号。