Mercurial/CentOSでリモートサーバを立てる

Mercurial/CentOSでリモートサーバを立てる

インストール

Mercurial本体はPythonで出来ているということもあってCentOSのボロボロyumよりもeasy_installを使ったほうが楽っぽいのでこっちを採用。

$ yum install gcc python python-devel python-setuptools
$ easy_install mercurial
$ sudo easy_install pip
$ sudo pip install Mercurial

終了。カンタン過ぎ

リモートリポジトリの大元になるリポジトリを作る

どこでもいいから適当なディレクトリを作ってその中で

$ hg init

終了。カンタン過ぎ

適当に作ったディレクトリの中に .hg ディレクトリが出来上がっているので その中にhgrcファイルを作って中に

[web]
push_ssl = false
allow_push = *

と書きこむ。これはSSL無しで誰でもpushできるよっていうユルユル設定。 ローカルネットワーク内でやるならこれぐらいで十分でしょう

外部向けにサーバを立てる

作ったリポジトリを外部からアクセスして、リモートとして使えるようにする。

Mercurialには最初っから公開用の簡易サーバがくっついていてこいつでなんとかなるようになっている。

さっき作ったリポジトリのあるディレクトリで

$ hg serve -p 8000

これでサーバが起動して

http://192.168.1.11:8000/

で待ち受けてくれるようになる。

つまりこのポートがこのリポジトリ専用の待ち受けとなるわけだな

外部からこのリポジトリにアクセスしてみる

インポートの元をさっきのアドレス

http://192.168.1.11:8000/

にし、cloneする

そうすると作ったフォルダにも隠しフォルダ

.hg

が出来上がってクローンが完了したことがわかる。これローカルリポジトリができたことになる

リモートへの反映

ローカルでcommitして、リモートへpushする。

pushしてもリモート側のファイルに変化がないのだがそれはリモート側のワークに反映されていないだけであって、リポジトリにはしっかり記録されている。

バージョン

  • 2012-12-31 より汎用的に記述しなおし。

タグ

vcs/hg/setup_remote_server_on_centos.txt · 最終更新: 2017-10-10 10:50 by ore