我'A'在 subversion 存储库上有一条路径,我想在其中进行一些更改但不想在其中提交更改'A'再次提交更改。
我的系统上有以下内容:
'A'我系统上的最新工作副本位于文件夹中'X'
我采取以下步骤:
- 在 subversion 存储库上复制
'A'到'B' - 导出
'X'到我系统上的另一个文件夹'Y'
我如何强制颠覆以将'Y'我系统上的文件夹标记为最新的'B'存储库而不需要任何更新,'B'因为它已经具有相同的文件'B'?
我'A'在 subversion 存储库上有一条路径,我想在其中进行一些更改但不想在其中提交更改'A'再次提交更改。
我的系统上有以下内容:
'A'我系统上的最新工作副本位于文件夹中'X' 我采取以下步骤:
'A'到'B' 'X'到我系统上的另一个文件夹'Y' 我如何强制颠覆以将'Y'我系统上的文件夹标记为最新的'B'存储库而不需要任何更新,'B'因为它已经具有相同的文件'B'?
如果你已经svn copy在远程服务器上复制了 A,svn 并没有真正复制那里的数据,它只是创建指向旧数据的指针。更新工作副本时,为了优化网络操作,它只会将旧数据的本地副本复制到新位置。然后只提交主文件,而不是分支。喜欢
svn ci trunk
未提交分支版本
我找到了涵盖新 svn 功能的好文章
http://blogs.collab.net/subversion/reducing_network_traffiic_in_subversion_1-8
如果它们是相同的存储库、相同的版本和相同的分支。我猜你可以删除你的'B'并从'A'做一个完整的递归复制(cp -a),包括隐藏文件夹和元文件。
SVN checkout 比下载副本做得更多,它获取和比较版本并缓存最新的 HEAD。
我可以建议您使用 git 解决方案,使用 git-svn 作为代理副本,并在您的工作文件夹上使用 git。
第二个想法 - 而不是 svn 复制和导出,您可能只是将带有所有 svn 元数据的本地整个工作副本复制到不同的位置并偶尔更新它