在64位Windows 7上使用Mercurial可以“推送”到网络共享吗?

时间:2010-07-14 20:08:05

标签: mercurial tortoisehg windows-7-x64

我们正在从Windows XP x86升级到Windows 7 x64,我正在测试当前工作流程的兼容性问题。

目前,我们将中央Mercurial存储库存储在网络共享上,将副本克隆到我们的工作站,并将我们的更改推送回基于网络的存储库。这在WinXP中完美运行,但在Win7中,我在回到网络共享时始终收到错误消息:

  

推送到t:\ datamgt \ automat \ Kevin \ SampleRepo   寻找变化   [错误32]进程无法访问该文件,因为它正由另一个进程使用:'T:\ datamgt \ automat \ Kevin \ SampleRepo \ .hg \ journal.dirstate'

我正在使用TortoiseHG 1.1.1和Mercurial 1.6.1023。

我已经能够推送存储在同一工作站上的存储库,但不能推送到网络共享存储库。如果可能的话,我们不想去基于网络服务器的存储库 - 这是为了让新软件添加到我们的服务器上而进行的一场大战。

1 个答案:

答案 0 :(得分:2)

可以推送到网络共享,但不是Mercurial团队推荐的。

请参阅Mercurial wiki中的Publishing Repositories中的“共享磁盘”部分:

  

通常仅限于内部网,不是   一般推荐一般   网络文件系统的问题   可靠性

在我的工作场所,我们将HG存储库保存在网络共享(在Windows 2003服务器上),因为它是最容易设置的。我们现在这样做了大约一年半,我们从来没有像你这样的问题。

但在国内,我在NAS上有一个网络共享(它可以从Windows访问,它看起来和感觉就像一个Windows共享,但NAS实际上是在Linux上运行)。我很长一段时间都没有遇到任何问题,但是几周后我遇到了类似你的错误(尽管有不同的错误信息)。
posted this on the Mercurial bug tracker,我被告知我的问题可能是因为我的NAS在Linux上运行,因为他们不知道真正的 Windows共享有任何问题:

  

在真正的Windows股票上(由...提供服务)   Windows)似乎没有   问题(从未听说过其他人   这样做的问题。)

所以也许你的问题也是由类似的东西造成的 您尝试推送什么样的Windows共享?它真的在Windows机器上吗?