Mercurial "server"

标签 mercurial version-control

我使用 Mercurial 一段时间了,但主要是为了我自己使用。不过现在,我正在开发一个项目,我们两个人正在构建同一个项目,并且我们可能会修改彼此的文件。

我想在服务器上设置一个 Mercurial 存储库,使该存储库成为“服务器”,这样我的更改和其他编辑器的更改都会推送到该服务器(所以基本上是 Subversion/CVS 模型);不过我喜欢 Mercurial,并且不想切换到 Subversion 之类的东西。

在我自己的网络中,一切都是在 Linux 上完成的,我的“服务器”有 OpenSSH安装。因此,将我的更改(我在多台计算机上工作)从一台计算机推送到服务器只是“hg Push”的问题;使用的协议(protocol)是SSH用于传输更改。

问题是我使用 Linux,服务器将是 Windows(所以没有 OpenSSH,对吧?),另一个编辑器也将使用 Windows。据我所知,在这些类型的设置中,Mercurial 的最佳工作方式是让存储库从源中提取更改,而不是将源推送到“服务器”。我位于多个防火墙后面(不完全是我的网络),并且我的计算机从服务器上不可见,并且我假设其他编辑器也位于防火墙后面(因此我们不能只启动本地 Mercurial HTTP 服务器并让“服务器”计算机从中获取数据)。

两位编辑者获取对服务器存储库的更改的最佳方式是什么? (我应该补充一点,该服务器是 Internet 上的服务器,因此它与 google.com 等内容一样可见。它是托管 Windows 服务器,但如果满足以下条件,我可能有权安装软件:为此需要。)

最佳答案

我相信阅读该项目的文档是一个很好的开始:https://www.mercurial-scm.org/wiki/PublishingRepositories .

关于 Mercurial "server",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/740075/

相关文章:

mercurial - 如何取消 Mercurial 中的 merge ?

Mercurial hg 子存储库问题 - "abort: unknown revision'

version-control - 是否可以在不使用 Visual Studio 或其他 IDE 的情况下使用 VS Team Services 进行源代码控制?

ios - 如何将来自 github 的自定义控件 merge 到我的项目中并保持最新

version-control - BusinessObjects 的版本控制

git - 是否发生了从特定分支到 master 的 merge ?

mercurial - Mercurial 中的自动 merge 有多安全?

mysql - 如何使用 Mercurial 支持 MySQL 表的现状?

ubuntu - 如何在 Ubuntu 中克隆 HG/Mercurial 远程存储库并运行 sh 文件?

git local branch 和 origin/master 在 git reset --hard 之后仍然存在分歧