SVN:如何签出相同存储库的两个本地副本

时间:2013-01-07 15:04:52

标签: svn repository svn-checkout

我有一个SVN控制的PCB库,我在工作和家中使用。文件在我的办公室工作站上签出。

为了能够在家工作,我需要在外部硬盘上检查相同的文件,我连接到办公室工作站以便在我的私人PC上同步和使用(没有安装SVN - 没有连接到公司的SVN服务器想要的)。

我试过做一个双重结账,这给了我几十个冲突,其中(imo)应该没有。

我不确定同步意味着什么。

我不能一直处理外部硬盘驱动器,因为办公室工作站也可能由我以外的人使用 - 当我和外部硬盘驱动器不在时。

如何查看同一存储库的两个本地副本?

4 个答案:

答案 0 :(得分:1)

您可以签出相同存储库的两个本地副本:

svn checkout file:///var/svn/repos/test mine1

然后

svn checkout file:///var/svn/repos/test mine2

http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.checkout.html

答案 1 :(得分:1)

当您离开办公室时,每次离开办公室并希望在家工作时,将整个工作副本文件夹从公司的PC复制到外部硬盘。如果您在家中进行任何更改,则在您再次在办公室时从外部HDD提交更改。比你在公司PC上的工作副本上“更新”。 通过这种方式,您可以在公司的PC上随时使用功能性工作副本,并且可以在家中工作。

答案 2 :(得分:1)

有两种解决方案:

  1. 您只需结帐到外接高清上的新文件夹即可。这样,你可以在第二个位置工作,就像在第一个位置一样。小心不要混淆结账,永远不要忘记同时提交,否则你最终会陷入合并地狱。

  2. 您可以使用Mercurial之类的DCVS来创建分散副本。 Mercurial知道如何与Subversion交谈,它可以创建独立的存储库。

  3. 使用第二种方法,您可以在外部硬盘上创建Mercurial存储库。使用push / pull时,它将与上游Subversion repo对话。但您可以将磁盘置于主页,将存储库克隆到您的私人PC上(或在外部硬盘上复制)。

    这具有额外的优势,Mercurial允许您即使未连接到任何网络也可以提交您的工作 - Mercurial会将提交信息保存在存储库中,直到您告知它将更改推送到Subversion。

    有关Mercurial的介绍,请查看此处:http://hginit.com/

    有几种方法可以连接Mercurial和Subversion,请参阅此处以获取包含优缺点的列表:https://www.mercurial-scm.org/wiki/WorkingWithSubversion

答案 3 :(得分:0)

如果我正确理解了问题,你可以使用Dropbox。

将存储库签出到Dropbox文件夹中,然后所有文件将与dropbox同步。然后,您可以在家中和工作PC上设置Dropbox,您可以在工作或家中访问您的文件。