MercurialとVisual Studioの相互作用を構成する

TFSの短い試行使用の後、彼が食い尽くしているリソースが多すぎるため、私は彼に失望しましたが、私だけでは、彼からの十分な消耗がありません。 バージョン管理システムを交換するための他のオプションを簡単に調べた後、私はMercurialに決めました。 のために:

1. WindowsおよびNIXで問題なく動作します。

2.安定しています。

3.適切な機能のリスト。

4.さまざまなIDEおよびシェルと統合するための多くのユーティリティ。

5.最小限のリソースを使用します。

6.たくさんのプラグイン。



Googleを少し掘り下げて 、Visual Studio 2010- VisualHGのプラグインを見つけました。説明から判断すると、かなりまともです。 VisualHGはTortoiseHGと連携してのみ動作するため、IISはすでにサーバー上にあるため、リポジトリへの別のWebインターフェイスを作成する必要がありました。

IISサイトツリーに個別のディレクトリを作成することから始めましょう。ただし、原則として個別のサイトも可能です。

わかりやすくするために、 localhost / hg /とします。物理パスはV:\ hg \に対応します。

Mercurialディストリビューションと共に、 Python 'eスクリプトが配布され、リポジトリWebページが作成されます。 もちろん、インストール中に展開するように指示された場合、配布ディレクトリのlibrary.zipアーカイブにあります。 この非常にアーカイブは、物理パスが-V:\ hg \ lib \であるため、localhost / hg /から子ディレクトリ、たとえばlocalhost / hg / lib /に解凍されます。

追加のソフトウェアからIISでスクリプトを実行するには、Python 2.6 x86のみが必要です。 amd64バイナリでディストリビューションを使用する場合、スクリプトは単に機能しません。 理由は何ですか、私は理解していませんでした。

Pythonは、「ハンドラーマッピング」設定のIISパネルを介して接続されます。 そこで、次のパラメータを使用して「スクリプトマッピング」を追加する必要があります。

リクエストパス: * .cgi

実行可能ファイル: C:\ Python26_x86 \ python.exe -u "%s%s"

名前: Python



Pythonディストリビューションの名前とパスは当然異なる場合があります。

正常性をテストするには、次の内容を含むファイルV:\ hg \ test.cgiを作成できます。

 「ステータス:200 OK」を印刷
 'Content-type:text / html'を印刷します
印刷する '' 
 '<html> <head> <title>テストページ</ title> </ head>'を印刷します
 '<body>'を印刷します
 '<h1>テストページ!</ h1>'を印刷します
 '</ body> </ html>'を印刷します


すべてが正常に表示されたら、続行できます。

その後、 hgwebdir.cgiファイルをhgフォルダーに追加して、Pythonスクリプトを実行します。

編集後、変更は次のようになります。





また、このディレクトリに、次の内容のhgweb.configファイルを追加する必要があります。

 [パス]
 / =リポジトリ/ *

 [ウェブ]
 baseurl = / hg
 push_ssl = false
 allow_push = *


reposがリポジトリディレクトリである場合、フルパスはv:\ hg \ reposです。

より便利で視覚的に使用するために、URL Rewriteを添付できます。 アドレスバーからhgwebdir.cgiを削除できます。 これを行うには、同様のパラメーターを使用してルールを作成します。

要求されたURL: 一致とパターン

使用: ワイルドカード

パターン: *

アクションタイプ: 書き換え

書き換えURL: hgwebdir.cgi / {R:1}



他のすべてのパラメーターはデフォルトです。

リポジトリを作成するには、コンソールコマンドをテストとして使用できます: hg.exe init v:\ hg \ repos \ test

リポジトリのリストを表示します。



これで、最小要件としてリポジトリを使用するには、任意のコンピューター上にTortoiseHGのみが存在します。 MS VS 2010のMercurialリポジトリを使用するには、VisualHGプラグインをインストールし、プロジェクトディレクトリにリポジトリを作成して、このプロジェクトをスタジオで開きます。 これでコミットを管理でき、TortoiseHGからそれらをサーバーにアップロードできます。



使用したソフトウェア:

Mercurial 1.5.4

TortoiseHG 1.0.4

Python 2.6.4 x86

IIS 7.5

MS VS 2010



All Articles