linux - Linux 中 NTFS 分区上的 Subversion (svn) 存储库?

标签 linux svn version-control ntfs ext4

在 Linux 中使用 svn 时,我可以在 NTFS 分区上创建和使用 svn 存储库吗?也就是说,NTFS 分区上的存储库以及 checkout 和提交到 EXT4 分区和从 EXT4 分区提交。

我意识到 Linux 中的 NTFS 支持是有限的,例如不支持权限和符号链接(symbolic link)。这或任何其他限制会导致任何问题吗?

我问的原因是因为我正在考虑 1) 将我的存储库移动到我的 Dropbox 文件夹(位于 NTFS 分区上)或 2) 将我的存储库移动到内存棒(可能是 NTFS 分区的) .

我的用例非常简单。我是唯一使用存储库的人。目前我的存储库位于 EXT4 上,我要么从存储库所在的同一台机器访问它,要么从第二台机器通过 svn+ssh://访问它。但是,如果我选择上述选项之一,访问策略显然会发生变化。

最佳答案

我会犹豫是否这样做,因为正如您所说,NTFS 分区不支持 Unix 样式权限。

Subversion 存储库目录通常是拥有的,并且只能由运行任何 Subversion 服务器进程的用户写入。例如,如果您正在使用 Apache httpd,并且您的 Apache 用户名为 httpd,则拥有存储库的用户为 httpd,这将是唯一的用户对文件和目录具有写权限。

Windows 机器上的 NTFS 分区确实具有正确设置的权限,因为 Subversion 服务器进程将使用 Windows 权限设置。 Linux 服务器会有问题。

此外,NTFS 分区保留大小写而不区分大小写,我不知道这将如何影响在 Linux 机器上运行的 Subversion 服务器进程。同样,Windows Subversion 服务器进程也可以。 Linux 服务器可能有问题。

不幸的是,我不能以某种方式肯定地说。我从来没有尝试过,也没有看到它完成。但是Wandisco Forum上有帖子这涵盖了这种情况。用户能够绕过他的问题,但我不敢说从那时起一切都是啤酒和糖果。

请说明您没有这样做,因此您可以在多个用户之间共享一个 file:// 协议(protocol) Subversion 存储库。这是一个又大又胖的禁忌。相反,您至少应该运行 svnserve 进程,并让用户通过 svn:// 协议(protocol)访问您的存储库。 svnserve 的设置非常简单——即使是作为 Windows 服务。唯一的问题可能是端口 3620(Subversion 服务器端口)被防火墙或路由器阻止。

关于linux - Linux 中 NTFS 分区上的 Subversion (svn) 存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20335834/

相关文章:

c++ - 如何在 C++ 中使用键盘输入终止监听的 TCP 服务器

c - pcap_next() 将地址返回到不可访问的内存区域

eclipse - 忽略 Eclipse 工作区的模式

java - Git分支管理: Local vs.远程

c++ - 如何调试奇怪的内存泄漏 (C++)

LINUX:如何检测ftp文件上传完成

svn - 安装 svn : error after restarting apache

svn - 如何复制在 SVN 中维护的源代码并将代码移动到不同的 SVN 存储库

git - 丢弃旧历史的版本控制

version-control - 我可以将我的 Mercurial 工作目录移动到另一个位置吗?