2010-08-03 110 views
0

我有一个SVN服务器设置在家里,目前正在使用包括我在内的3人。我有一些分支和标签从干线。所有用户都检出了完整的存储库,其中包括主干,分支,标签。现在,当一个新标签由稳定版本构成时,所有用户都会更新其标签。这是我开始的问题。很多时候,许多文件在trunk中保持不变,然后在该版本的bug列表修复时标记为稳定版本。当更新开始时,SVN从服务器获取所有文件,包括没有改变的文件。更新标签也需要很长时间。SVN标签/分支更新

我想问一下,如果有一种方式来获得颠覆从本地干线得到所有的文件,把它放在新的标签,然后更新标签,并只替换已更改的文件。因此,如果主干目录是:

干线
- 艺术
- 发动机
---图形
---物理改性//
- SFX
---对话

和我标记它,可以svn从树干复制所有文件到新的标记,然后相应地更新标记?

一个解决方案,我知道是要导出的主干,然后更新标签。有没有更好的办法?

回答

0

我一直在寻找使用SVN开关答案 - SVN的相当基本的功能,我不知道的。

rlovtang已经回答了这个问题,但在一个注释。一旦他正式回答这个问题,我会将对勾标记转换为他的答案。

3

为什么用户需要检出完整的存储库?正常的事情是结账yourrepo/trunk或/ yourrepo/branches/yourbranch。

如果你仍然因为某种原因想要签出根目录,我想你可以通过将trunk复制到tags/yournewtag,然后在该标签上使用'svn switch'来完成你所要求的操作。

+0

我第二@ rlovtang的回答。如果您需要检查中继线旁边的特定分支或标记,请按要求进行操作,请单独检查。 – jeroenh 2010-08-03 21:37:08

+0

我同意但这不是我面临的问题。当某人签出一个标签,标记为Release1.0,然后在一段时间后出现Release1.1,其中有许多与Release1.0相同的未触及的文件,为什么浪费带宽和时间复制与以前版本没有什么不同的文件已经有这些文件?如果SVN先将本地文件复制到新标签(如果有),然后将其更新到新版本,那将是一个很好的功能。我想我应该重新思考我的后备箱铺设方式。 – Samaursa 2010-08-05 22:14:11

+1

@Samaursa看看svn开关。 http://svnbook.red-bean.com/en/1.5/svn.branchmerge.switchwc.html – rlovtang 2010-08-09 14:28:36

0

除非你需要的标签,你可能不应该,你甚至不需要一个本地副本工作。只要做一个URL svn副本,如“svn copy http://svn/repo/trunkhttp://svn/repo/tags/mytag”。快多了。

如果你在谈论的一个分支,我会做同样的,但后来结帐分公司上班就可以了。