使用Mercurial为现有项目创建新的远程存储库

时间:2012-07-26 11:14:56

标签: mercurial ssh hgrc

我有一个带有version.2的项目,我必须开始研究它以开发一个新版本。 我想在远程服务器(即mercurial-server)上创建一个新的repo,以便我的团队成员可以访问该repo。我的本地机器上有我的项目文件。

我有两个相关的问题:

  1. 如何使用我的项目文件在远程mercurial-server的/home/hg/repositories/private/project3(假设新的repo名称为project3)中创建它。我应该遵循哪些步骤来执行此操作。

  2. 如何创建访问权限(usrname / pword),以便我的团队可以http://dev.myproject.com/private/project3访问此回购。

  3. 注意: /home/hg/repositories/http://dev.myproject.com/的默认设置,我没有版本2的回购(我猜不可能克隆!)

1 个答案:

答案 0 :(得分:11)

如果不安装其他服务器端软件,您的团队将需要该框上的ssh帐户。我假设你有一个,你可以为你的朋友创建它们。如果你没有这个设置,你最好只使用bitbucket,它是免费的,并提供ssh和ftp访问。

另外,你没有说你的project2是否已经在Mercurial控制之下了,所以我假设它不是。

要创建远程仓库,您可以在本地计算机上执行这样的操作

hg init project3   # <-- creates a new empty respository
cp ALL_THE_PROJECT3_FILES_YOU_WANT project3  # <--- put the files you want into project3
cd project3   # <-- go into your local project3 repository
hg addremove   # <-- LOCALLY add the files you copied in
hg commit -m "initial commit copied in project2"  # <-- LOCALLY commit the files
cd ..   # <---- go up a directory
hg clone project3 ssh://yourusername@dev.myproject.com//home/hg/repos/project3  # clone the repo over to the server

然后你的队友可以使用以下方法克隆:

hg clone ssh://theirusername@dev.myproject.com//home/hg/repos/project3

以下是一些你可能会意外搞砸的方法:

  • 您的朋友需要ssh帐户
  • 您的朋友帐户需要对/home/hg/repos
  • 的读/写权限

请注意,所有克隆都是通过ssh进行的。设置HTTP更难,可能不是你需要做的事情。

说真的,只需使用bitbucket。