SVN控制共享虚拟机文件夹

时间:2012-06-22 15:19:17

标签: svn tortoisesvn vmware subclipse

我使用subclipse在Mac上进行SVN结帐。我希望能够与Windows 7中的vmware共享文件夹共享此文件夹,并使用tortoiseSVN(在VM上)和/或subclipse(在Mac上)执行更新/提交。

这可能吗?或两者是否会发生冲突?

共享驱动器具有隐藏的" .svn" subclipse创建的文件夹。还有什么龟需要识别结账?

3 个答案:

答案 0 :(得分:2)

分享工作副本绝不是一个好主意。如果与之共享的操作系统完全相同(例如,所有Windows或所有Mac工作站),则可以执行此操作。但是,如果操作系统不一样,你一定不能分享它!

不在OS之间共享工作副本的一个明显原因:svn:eol-style属性具有native作为一个可能的值。如果你在操作系统之间共享这样的wc,那么最终会发生冲突。

但这只是最明显和最明显的原因。工作副本元数据(存储在隐藏.svn文件夹中的数据)也有一些操作系统特定的东西,这就是你真正搞乱你的工作副本到无法修复的地方。

答案 1 :(得分:0)

从其他帖子的回复和评论中,让两个颠覆客户端在同一个文件夹上工作听起来是个坏主意。但是,我认为您仍然可以共享工作文件夹本身,以便您可以切换到其他操作系统并尝试不同操作系统上工作目录的当前状态。只需确保您始终在一个操作系统上从单个SVN客户端提交。

以下是有关如何share the work folder的信息。

答案 2 :(得分:0)

不要只是共享存储库。一旦将网络置于存储库和客户端之间,源代码控制存储库(包括SVN存储库)就难以确保要求。为了防止由于中间网络引起的故障,SVN(和其他源代码控制系统)具有构建在它们之上的协议,即使网络出现故障也能以可预测的方式工作。

通过映射驱动器并使用基于文件的协议,您可以绕过为解决网络问题而构建的所有保护措施,而应该在存储库顶部使用网络协议。 SVN默认有四个可供选择svn:// svn + ssh:// http:// https://。

然后你会有一个存储库和两个人连接到它,代码将在每个人之间共享和同步。

有MAC svn客户端,所以如果你对TortiseSVN非常熟悉,你可能需要学习一个新的客户端,但这可能是最糟糕的。使用当前(不太理想的)方法,可能发生的最糟糕的情况是您损坏了本地存储库,并失去了Windows和Mac机器的工作。