6

如果您在开发机器上安装了 Subversion 并且您没有在团队中工作,那么您有什么理由应该使用svn协议而不是file

4

12 回答 12

8

如果您自己在一台机器上工作,那么根据我使用 file:// 协议的经验,它可以正常工作。即使我的团队在远程服务器上使用 Subversion,我也会为我自己的个人项目设置一个基于本地文件的存储库。如果您需要从另一台机器访问它,那么我会费心设置一个基于服务器的存储库。你也可以看看像 Mercurial 这样的分布式系统——在我离开之前,我们在我的上一家公司对它进行了评估——但肯定会选择其中一个,混合 svn 和 hg 根本不能很好地工作。

于 2008-08-28T15:43:48.507 回答
5

您可以随时添加一个颠覆服务器,让它指向您的 file:// 存储库,然后您将立即获得 svn:// 访问权限。

协议无关紧要,它只是允许通过不同类型的介质进行传输,重要的是存储库内容。

并且稍后安装 SVNSERVE 相当容易。

但是,您使用的颠覆软件的风格确实很重要,例如,一个供应商制造它,因此元数据存储在“_svn”而不是“.svn”中,您可能需要先检查兼容性。

于 2008-08-28T15:52:39.657 回答
2

相信只要启用了相关的SVN工具,你应该没有问题——就像其他人说的,你以后可以随时设置服务器。

那么我的建议是确保您可以使用ToroiseSVN和 Collabnet subversion 客户端。

如果您愿意,现在简化 SVN 服务器设置的一个主要技巧是使用虚拟设备。也就是说,一个预先安装和(大部分)预先配置了颠覆的虚拟机 - 几乎是即插即用的东西。您可以在这里这里这里尝试,或者尝试在 Google 上搜索“颠覆虚拟设备”。

于 2008-08-28T16:55:28.897 回答
1

不久前,我们使用 ant 进行构建的项目。Ant 会检查来自 SVN 存储库的最新代码,进行构建,然后在构建所基于的代码的 SVN 存储库中创建一个标签。我们发现 Ant 自动化无法跨除 svn:// 协议之外的任何协议工作。

因此,如果您想使用 Ant 自动执行与 SVN 的任何交互,您将需要使用 svn:// 协议。

于 2008-08-28T15:48:44.923 回答
1

从来没听说过。使用源代码控制总是值得的,所以即使 file:// 在某种程度上较差,如果这意味着你实际上使用颠覆而不是厌倦了设置并开始编码,那么我的书就可以了。

于 2008-08-28T15:55:02.037 回答
1

这里提到了一些基于文件和基于服务器的存储库。如果我错了,请纠正我,但我对 Subversion 的理解是存储库是系统文件存储库或 Berkley DB 存储库。文件/服务器的区别实际上只是访问存储库的方式。即,可以使用 file:/// 协议直接在文件系统上访问(签出、提交等)相同的存储库,也可以使用 ssh、svn 服务器和/或使用 http 的 Apache 代理访问。

于 2010-04-14T00:31:24.050 回答
0

我将 svn:// 用于个人项目,因为我经常在同一网络上的多台机器上工作,并且我想将所有内容都存储在我桌面机器上的存储库中。

于 2008-08-28T15:33:53.540 回答
0

没有,我不知道。它应该被证明至少快一点

于 2008-08-28T15:33:54.320 回答
0

我有许多不同的机器,所以我更容易使用 svn:// 作为路径。除此之外,我发现 svn 路径几乎总是比我的文件路径短,因此输入更少。

于 2008-08-28T15:57:37.960 回答
0

选择基于服务器的协议而不是协议有三个原因file

  • 减少网络流量。

当您在不在工作站上的存储库上使用文件协议时,会写入整个文件,因为在没有守护程序来处理它们的情况下,无法使用增量。

  • 您可以通过 Internet 公开基于服务器的协议

这给您留下了是否使用svnorhttp协议的问题。两者都可以通过网络使用。Svn具有使用直接二进制而不是 base64 编码的效率优势。Http面对官僚主义的阻碍,更容易通过企业防火墙走私。

  • 在远程办公等跨域场景下,权限的麻烦更少。

您的家庭工作站可能不是公司域的一部分。Subversion 服务器守护进程充当代理。它在经过身份验证的进程中运行,该进程具有代表您执行 I/O 操作的必要权限。

于 2008-10-23T13:08:40.117 回答
0

file://当您是唯一一个当前正在访问存储库的人时,访问模式可以正常工作。此外,将存储库放在服务器上并通过https://svn://您需要与他人协作使存储库可用应该没有问题。

但是,file://在 Windows 上 URL 很难看,使用 HTTP(S) 服务器可以帮助您使用漂亮的 URL。Windows 上的典型本地 URL 如下所示file:///C:\Repositories\MyRepo。不过,我更喜欢https://svn.example.com/MyRepo.

于 2017-06-22T12:10:09.457 回答
-2

即使我自己工作......我的协议是即使对于个人项目也始终使用源代码控制。它为您的所有代码工作提供单点备份,并允许您改变主意和/或检索旧版本。

于 2008-08-28T15:38:04.073 回答