1

'A'在 subversion 存储库上有一条路径,我想在其中进行一些更改但不想在其中提交更改'A'再次提交更改。

我的系统上有以下内容:

  • 'A'我系统上的最新工作副本位于文件夹中'X'

我采取以下步骤:

  • 在 subversion 存储库上复制'A''B'
  • 导出'X'到我系统上的另一个文件夹'Y'

我如何强制颠覆以将'Y'我系统上的文件夹标记为最新的'B'存储库而不需要任何更新,'B'因为它已经具有相同的文件'B'

4

3 回答 3

1

如果你已经svn copy在远程服务器上复制了 A,svn 并没有真正复制那里的数据,它只是创建指向旧数据的指针。更新工作副本时,为了优化网络操作,它只会将旧数据的本地副本复制到新位置。然后只提交主文件,而不是分支。喜欢

svn ci trunk

未提交分支版本

我找到了涵盖新 svn 功能的好文章

http://blogs.collab.net/subversion/reducing_network_traffiic_in_subversion_1-8

于 2013-10-29T15:15:14.567 回答
1

如果它们是相同的存储库、相同的版本和相同的分支。我猜你可以删除你的'B'并从'A'做一个完整的递归复制(cp -a),包括隐藏文件夹和元文件。

SVN checkout 比下载副本做得更多,它获取和比较版本并缓存最新的 HEAD。

我可以建议您使用 git 解决方案,使用 git-svn 作为代理副本,并在您的工作文件夹上使用 git。

于 2013-10-30T06:47:40.950 回答
1

第二个想法 - 而不是 svn 复制和导出,您可能只是将带有所有 svn 元数据的本地整个工作副本复制到不同的位置并偶尔更新它

于 2013-10-29T15:34:11.260 回答