マニュアル

プロジェクト設定

Subversion プロパティ

図 4.37. Subversion プロパティページ

Subversion property page


Subversion プロパティは、Windows のプロパティダイアログから読み書きできますが、TortoiseSVNプロパティ、および TortoiseSVN のステータスリスト内から コンテキストメニュープロパティ からも読み書きできます。

独自のプロパティを追加したり、Subversion で特別な意味を持つプロパティを追加したりできます。これらは svn: で始まります。svn:externals はそのようなプロパティです。「外部アイテム」というセクションで、externals の扱い方をご覧ください。

svn:keywords

Subversion は CVS のようなキーワード展開をサポートしており、ファイル名とリビジョン情報をファイル自体に埋め込むために使用できます。現在サポートされているキーワードは次のとおりです。

$Date$

最後にコミットされた日時。これは、ワーキングコピーを更新したときに取得した情報に基づいています。リポジトリをチェックして、より新しい変更を見つけることはしません

$Revision$

最後にコミットされたリビジョン。

$Author$

最後にコミットした作成者。

$HeadURL$

リポジトリ内のこのファイルの完全な URL。

$Id$

前の 4 つのキーワードを圧縮した組み合わせ。

これらのキーワードの使用方法については、Subversion Book の「 svn:keywords セクション 」を参照してください。このセクションでは、これらのキーワードの詳細な説明と、有効にして使用する方法について説明しています。

Subversion のプロパティの詳細については、「 特殊プロパティ 」を参照してください。

プロパティの追加と編集

図 4.38. プロパティの追加

Adding properties


新しいプロパティを追加するには、まず 新規... をクリックします。メニューから必要なプロパティ名を選択し、特定のプロパティダイアログに必要な情報を入力します。これらの特定のプロパティダイアログの詳細については、「プロパティエディタ」というセクションで説明しています。

独自のダイアログを持たないプロパティを追加するには、新規... メニューから 詳細設定 を選択します。次に、コンボボックスで既存のプロパティを選択するか、カスタムプロパティ名を入力します。

プロパティを多数のアイテムに一度に適用する場合は、エクスプローラーでファイル/フォルダーを選択し、コンテキストメニュープロパティ を選択します。

プロパティを現在のフォルダー以下の階層のすべてのファイルとフォルダーに適用する場合は、再帰的チェックボックスをオンにします。

既存のプロパティを編集する場合は、既存のプロパティのリストからそのプロパティを選択し、編集... をクリックします。

既存のプロパティを削除する場合は、既存のプロパティのリストからそのプロパティを選択し、削除 をクリックします。

svn:externals プロパティを使用すると、同じリポジトリまたは完全に異なるリポジトリから他のプロジェクトをプルインできます。詳細については、「外部アイテム」というセクションをお読みください。

HEAD リビジョンでプロパティを編集

プロパティはバージョン管理されているため、以前のリビジョンのプロパティを編集することはできません。ログダイアログまたはリポジトリブラウザの非 HEAD リビジョンからプロパティを見ると、プロパティと値のリストは表示されますが、編集コントロールは表示されません。

プロパティのエクスポートとインポート

多くの場合、bugtraq:logregex など、同じプロパティセットを何度も適用することがあります。プロパティをあるプロジェクトから別のプロジェクトにコピーするプロセスを簡略化するために、エクスポート/インポート機能を使用できます。

プロパティがすでに設定されているファイルまたはフォルダーから、TortoiseSVNプロパティ を使用し、エクスポートするプロパティを選択して、エクスポート... をクリックします。プロパティ名と値を保存するファイル名の入力を求められます。

これらのプロパティを適用するフォルダーから、TortoiseSVNプロパティ を使用し、インポート... をクリックします。インポート元のファイル名の入力を求められるので、以前にエクスポートファイルを保存した場所に移動して選択します。プロパティはフォルダーに非再帰的に追加されます。

プロパティをツリーに再帰的に追加する場合は、上記の手順に従い、プロパティダイアログで各プロパティを順番に選択し、編集... をクリックして、プロパティを再帰的に適用するボックスをオンにして、OK をクリックします。

インポートファイルの形式はバイナリであり、TortoiseSVN 独自です。その唯一の目的は、インポートとエクスポートを使用してプロパティを転送することであるため、これらのファイルを編集する必要はありません。

バイナリプロパティ

TortoiseSVN は、ファイルを使用してバイナリプロパティ値を処理できます。バイナリプロパティ値を読み取るには、ファイルを 保存... します。バイナリ値を設定するには、16 進数エディターまたはその他の適切なツールを使用して、必要なコンテンツを含むファイルを作成し、そのファイルから 読み込み... ます。

バイナリプロパティはあまり使用されませんが、一部のアプリケーションでは役立つ場合があります。たとえば、巨大なグラフィックファイルを保存している場合や、ファイルのロードに使用するアプリケーションが巨大な場合は、サムネイルをプロパティとして保存して、プレビューをすばやく取得できるようにすることができます。

自動プロパティ設定

リポジトリにファイルやフォルダーを追加するときに、プロパティを自動的に設定するように Subversion と TortoiseSVN を構成できます。これを行うには 2 つの方法があります。

Subversion 構成ファイルを編集して、クライアントでこの機能を有効にすることができます。TortoiseSVN の設定ダイアログの 全般 ページには、そこに直接移動するための編集ボタンがあります。構成ファイルは、Subversion の動作の一部を制御する単純なテキストファイルです。2 つのことを変更する必要があります。まず、miscellany というセクションで、enable-auto-props = yes の行のコメントを解除します。次に、以下のセクションを編集して、どのファイルタイプにどのプロパティを追加するかを定義する必要があります。この方法は標準の Subversion 機能であり、任意の Subversion クライアントで動作します。ただし、各クライアントで個別に定義する必要があります。リポジトリからこれらの設定を伝播する方法はありません。

別の方法として、次のセクションで説明するように、フォルダーに tsvn:autoprops プロパティを設定する方法があります。この方法は TortoiseSVN クライアントでのみ機能しますが、更新時にすべてのワーキングコピーに伝播されます。

Subversion 1.8 以降では、ルートフォルダーにプロパティ svn:auto-props を設定することもできます。プロパティ値は、すべての子アイテムに自動的に継承されます。

どちらの方法を選択した場合でも、auto-props はワーキングコピーに追加された時点のファイルにのみ適用されることに注意してください。Auto-props は、すでにバージョン管理されているファイルのプロパティを変更することはありません。

新しいファイルに正しいプロパティが適用されていることを絶対確実にする場合は、必要なプロパティが設定されていないコミットを拒否するように、リポジトリのプリコミットフックを設定する必要があります。

コミットプロパティ

Subversion プロパティはバージョン管理されています。プロパティを変更または追加した後、変更をコミットする必要があります。

プロパティの競合

別のユーザーが同じプロパティを変更したために、変更のコミットで競合が発生した場合、Subversion は .prej ファイルを生成します。競合を解決したら、このファイルを削除します。

TortoiseSVN プロジェクトプロパティ

TortoiseSVN には独自の特殊なプロパティがいくつかあり、これらは tsvn: で始まります。

  • tsvn:logminsize は、コミットのログメッセージの最小長を設定します。ここで指定した長さよりも短いメッセージを入力すると、コミットは無効になります。この機能は、すべてのコミットに適切な説明的なメッセージを提供するように促すのに非常に役立ちます。このプロパティが設定されていない場合、または値がゼロの場合、空のログメッセージが許可されます。

    tsvn:lockmsgminsize は、ロックメッセージの最小長を設定します。ここで指定した長さよりも短いメッセージを入力すると、ロックは無効になります。この機能は、取得するすべてのロックに適切な説明的なメッセージを提供するように促すのに非常に役立ちます。このプロパティが設定されていない場合、または値がゼロの場合、空のロックメッセージが許可されます。

  • tsvn:logwidthmarker は、ログメッセージを改行前の最大幅 (通常は 80 文字) でフォーマットする必要があるプロジェクトで使用されます。このプロパティをゼロ以外の値に設定すると、ログメッセージ入力ダイアログで 2 つのことが行われます。最大幅を示すマーカーが配置され、表示のワードラップが無効になるため、入力したテキストが長すぎるかどうかを確認できます。注: この機能は、ログメッセージに固定幅フォントを選択している場合にのみ正しく機能します。

  • tsvn:logtemplate は、ログメッセージのフォーマットに関するルールがあるプロジェクトで使用されます。プロパティには、コミットを開始したときにコミットメッセージボックスに挿入される複数行のテキスト文字列が保持されます。必要な情報を含めるように編集できます。注: tsvn:logminsize も使用している場合は、長さをテンプレートよりも長く設定してください。そうしないと、保護メカニズムが失われます。

    tsvn:logtemplate の代わりに使用できるアクション固有のテンプレートもあります。アクション固有のテンプレートは、設定されている場合に使用されますが、アクション固有のテンプレートが設定されていない場合は tsvn:logtemplate が使用されます。

    アクション固有のテンプレートは次のとおりです。

    • tsvn:logtemplatecommit は、ワーキングコピーからのすべてのコミットに使用されます。

    • tsvn:logtemplatebranch は、ブランチ/タグを作成する場合、またはリポジトリブラウザでファイルまたはフォルダーを直接コピーする場合に使用されます。

    • tsvn:logtemplateimport は、インポートに使用されます。

    • tsvn:logtemplatedelete は、リポジトリブラウザでアイテムを直接削除する場合に使用されます。

    • tsvn:logtemplatemove は、リポジトリブラウザでアイテムの名前を変更または移動する場合に使用されます。

    • tsvn:logtemplatemkdir は、リポジトリブラウザでディレクトリを作成する場合に使用されます。

    • tsvn:logtemplatepropset は、リポジトリブラウザでプロパティを変更する場合に使用されます。

    • tsvn:logtemplatelock は、ロックを取得する場合に使用されます。

  • Subversion では、ファイル拡張子に基づいて、新しく追加またはインポートされたファイルに適用される「autoprops」を設定できます。これは、すべてのクライアントが Subversion 構成ファイルで適切な autoprops を設定しているかどうかに依存します。tsvn:autoprops はフォルダーに設定でき、これらはファイルを追加またはインポートするときにユーザーのローカル autoprops とマージされます。形式は Subversion autoprops と同じです。たとえば、*.sh = svn:eol-style=native;svn:executable は、.sh 拡張子を持つファイルに 2 つのプロパティを設定します。

    ローカル autoprops と tsvn:autoprops の間に競合がある場合、プロジェクト設定は特定のプロジェクトに固有であるため、プロジェクト設定が優先されます。

    Subversion 1.8 以降では、tsvn:autoprops の代わりにプロパティ svn:auto-props を使用する必要があります。これは、これとまったく同じ機能を持ちますが、すべての svn クライアントで動作し、TortoiseSVN に固有ではありません。

  • コミットダイアログには、各ファイルのステータス (追加、変更など) を含む、変更されたファイルのリストを貼り付けるオプションがあります。tsvn:logfilelistenglish は、ファイルステータスを英語で挿入するか、ローカライズされた言語で挿入するかを定義します。プロパティが設定されていない場合、デフォルトは true です。

  • TortoiseSVN はスペルチェッカーを使用できます。Windows 10 では、OS のスペルチェッカーが使用されます。以前のバージョンの Windows では、OpenOffice および Mozilla でも使用されるスペルチェッカーモジュールを使用できます。これらがインストールされている場合、このプロパティは使用するスペルチェッカー、つまりプロジェクトのログメッセージを記述する言語を決定します。tsvn:projectlanguage は、ログメッセージを入力するときにスペルチェックエンジンが使用する言語モジュールを設定します。言語の値は、次のページにあります。 MSDN: 言語識別子

    この値は、10 進数で入力することも、0x をプレフィックスとして付けると 16 進数で入力することもできます。たとえば、英語 (米国) は 0x0409 または 1033 として入力できます。

  • プロパティ tsvn:logsummary は、ログメッセージの要約としてログダイアログに表示されるログメッセージの一部を抽出するために使用されます。

    tsvn:logsummary プロパティの値は、1 つの正規表現グループを含む 1 行の正規表現文字列に設定する必要があります。そのグループに一致するものはすべて、要約として使用されます。

    例: \[SUMMARY\]:\s+(.*) ログメッセージの「[SUMMARY]」以降のすべてをキャッチし、それを要約として使用します。

  • プロパティ tsvn:logrevregex は、ログメッセージ内のリビジョンへの参照に一致する正規表現を定義します。これは、ログダイアログで、そのような参照をクリック可能なリンクに変換するために使用されます。リンクをクリックすると、そのリビジョンにスクロールするか (リビジョンがログダイアログにすでに表示されている場合、またはログキャッシュから利用可能な場合)、そのリビジョンを表示する新しいログダイアログを開きます。

    正規表現は、リビジョン番号だけでなく、参照全体に一致する必要があります。リビジョン番号は、一致した参照文字列から自動的に抽出されます。

    このプロパティが設定されていない場合、リビジョン参照をリンクするデフォルトの正規表現が使用されます。

  • クライアント側のフックスクリプトを構成するために使用できるプロパティがいくつかあります。各プロパティは、特定のフックスクリプトタイプ用です。

    利用可能なプロパティ/フックスクリプトは次のとおりです。

    • tsvn:startcommithook
    • tsvn:precommithook
    • tsvn:postcommithook
    • tsvn:startupdatehook
    • tsvn:preupdatehook
    • tsvn:postupdatehook
    • tsvn:prelockhook
    • tsvn:postlockhook

    パラメーターは、設定ダイアログでフックスクリプトを構成する場合と同じです。詳細については、「クライアントサイドフックスクリプト」というセクションを参照してください。

    すべてのユーザーが自分のワーキングコピーを同じ名前で同じ場所にチェックアウトしているわけではないため、リポジトリ内の URL を指定して、ワーキングコピーにある実行するスクリプト/ツールを構成できます。%REPOROOT% をリポジトリルートへの URL の一部として使用します。たとえば、フックスクリプトがワーキングコピーの contrib/hook-scripts/client-side/checkyear.js にある場合、スクリプトへのパスを %REPOROOT%/trunk/contrib/hook-scripts/client-side/checkyear.js として指定します。このようにして、リポジトリを別のサーバーに移動した場合でも、フックスクリプトプロパティを調整する必要はありません。

    %REPOROOT% の代わりに、%REPOROOT+% を指定することもできます。+ は、スクリプトを見つけるために必要な任意の数のフォルダーパスを挿入するために使用されます。これは、ブランチを作成した場合でも、ワーキングコピーの URL が異なっていてもスクリプトが引き続き見つかるようにスクリプトを指定する場合に役立ちます。上記の例を使用して、スクリプトへのパスを %REPOROOT+%/contrib/hook-scripts/client-side/checkyear.js として指定します。

    次のスクリーンショットは、ソースファイルヘッダーの現在の著作権年を確認するスクリプトが TortoiseSVN 用に構成されている方法を示しています。

    図 4.39. フックスクリプトのプロパティダイアログ

    Property dialog for hook scripts


  • 新しいプロパティを追加する場合は、コンボボックスのリストから 1 つを選択するか、任意のプロパティ名を入力できます。プロジェクトでカスタムプロパティを使用しており、それらのプロパティをコンボボックスのリストに表示したい場合 (プロパティ名を入力するときのタイプミスを避けるため)、tsvn:userfilepropertiestsvn:userdirproperties を使用してカスタムプロパティのリストを作成できます。これらのプロパティをフォルダーに適用します。子アイテムのプロパティを編集すると、カスタムプロパティが事前定義されたプロパティ名のリストに表示されます。

    カスタムダイアログをプロパティの追加/編集に使用するかどうかを指定することもできます。TortoiseSVN は、プロパティのタイプに応じて、4 つの異なるダイアログを提供します。

    bool

    プロパティが true と false の 2 つの状態しか持てない場合は、プロパティを bool タイプとして構成できます。

    図 4.40. プロパティダイアログのブールユーザータイプ

    Property dialog boolean user types


    プロパティを次のように指定します

    propertyname=bool;labeltext(YESVALUE;NOVALUE;Checkboxtext)

    labeltext は、プロパティの目的と使用方法を説明できるチェックボックスの上にダイアログに表示されるテキストです。その他のパラメーターは自明のはずです。

    state

    プロパティが多くの可能な状態の 1 つを表す場合 (例: yes、no、maybe)、プロパティを state として構成できます

    図 4.41. プロパティダイアログの状態ユーザータイプ

    Property dialog state user types
    Property dialog state user types
    Property dialog state user types


    プロパティは次のようになります

    propertyname=state;labeltext(DEFVAL;VAL1;TEXT1;VAL2;TEXT2;VAL3;TEXT3;...)

    パラメーターは bool プロパティと同じですが、DEFVAL はプロパティがまだ設定されていない場合、または構成されていない値を持っている場合に使用されるデフォルト値です。

    最大 3 つの異なる値の場合、ダイアログには最大 3 つのラジオボタンが表示されます。構成されている値がさらに多い場合は、ユーザーが必要な状態を選択できるコンボボックスを使用します。

    singleline

    1 行のテキストで構成されるプロパティの場合は、singleline プロパティタイプを使用します

    図 4.42. プロパティダイアログの単一行ユーザータイプ

    Property dialog single-line user types


    propertyname=singleline;labeltext(regex)

    regex は、ユーザーが入力したテキストを検証 (一致) するために使用される正規表現を指定します。テキストが正規表現に一致しない場合、ユーザーにエラーが表示され、プロパティは設定されません。

    multiline

    複数行のテキストで構成されるプロパティの場合は、multiline プロパティタイプを使用します

    図 4.43. プロパティダイアログの複数行ユーザータイプ

    Property dialog multi-line user types


    propertyname=multiline;labeltext(regex)

    regex は、ユーザーが入力したテキストを検証 (一致) するために使用される正規表現を指定します。正規表現に改行 (\n) 文字を含めることを忘れないでください!

    上記のスクリーンショットは、次の tsvn:userdirproperties で作成されました

    my:boolprop=bool;This is a bool type property. Either check or uncheck it.(true;false;my bool prop)
    my:stateprop1=state;This is a state property. Select one of the two states.(true;true;true value;false;false value)
    my:stateprop2=state;This is a state property. Select one of the three states.(maybe;true;answer is correct;false;answer is wrong;maybe;not answered)
    my:stateprop3=state;Specify the day to set this property.(1;1;Monday;2;Tuesday;3;Wednesday;4;Thursday;5;Friday;6;Saturday;7;Sunday)
    my:singlelineprop=singleline;enter a small comment(.*)
    my:multilineprop=multiline;copy and paste a full chapter here(.*)
                

TortoiseSVN は、いくつかのバグ追跡ツールと統合できます。これは、bugtraq: で始まるプロジェクトプロパティを使用します。詳細については、「バグ追跡システム/課題追跡システムとの統合」というセクションをお読みください。

また、webviewer: で始まるプロジェクトプロパティを使用して、いくつかの Web ベースのリポジトリブラウザと統合することもできます。詳細については、「Web ベースのリポジトリビューアとの統合」というセクションをお読みください。

フォルダーにプロジェクトプロパティを設定する

これらの特別なプロジェクトプロパティは、システムが機能するためにフォルダーに設定する必要があります。これらのプロパティを使用する TortoiseSVN コマンドを使用すると、クリックしたフォルダーからプロパティが読み取られます。プロパティがそこに見つからない場合、TortoiseSVN は、バージョン管理されていないフォルダーまたはツリーのルート (例: C:\) が見つかるまで、フォルダーツリーを上方向に検索します。各ユーザーが trunk/ などからのみチェックアウトし、サブフォルダーからチェックアウトしないことを確信できる場合は、trunk/ にプロパティを設定するだけで十分です。確信できない場合は、各サブフォルダーにプロパティを再帰的に設定する必要があります。同じプロパティを設定しても、プロジェクト階層の深さによって異なる値を使用すると、フォルダー構造のどこをクリックしたかによって結果が異なります。

プロジェクトプロパティのみ、つまり tsvn:bugtraq: および webviewer: の場合は、再帰的チェックボックスを使用して、すべてのサブフォルダーにプロパティを設定できます。すべてのファイルにも設定する必要はありません。

TortoiseSVN を使用して新しいサブフォルダーをワーキングコピーに追加すると、親フォルダーにあるプロジェクトプロパティは、新しい子フォルダーにも自動的に追加されます。

リポジトリブラウザを使用した制限事項

プロパティをリモートでフェッチするのは遅い操作であるため、上記の機能の一部はワーキングコピーのようにリポジトリブラウザでは機能しません。

  • リポジトリブラウザを使用してプロパティを追加すると、事前定義されたリストには標準の svn: プロパティのみが表示されます。その他のプロパティ名は手動で入力する必要があります。

  • プロパティは、リポジトリブラウザを使用して再帰的に設定または削除することはできません。

  • プロジェクトプロパティは、リポジトリブラウザを使用して子フォルダーが追加された場合、自動的に伝播されません

  • tsvn:autoprops は、リポジトリブラウザを使用して追加されたファイルにプロパティを設定しません

注意

TortoiseSVN のプロジェクトプロパティは非常に便利ですが、TortoiseSVN でのみ機能し、一部は新しいバージョンの TortoiseSVN でのみ機能します。プロジェクトで作業している人がさまざまな Subversion クライアントを使用している場合、または TortoiseSVN の古いバージョンを持っている可能性がある場合は、リポジトリフックを使用してプロジェクトポリシーを強制することをお勧めします。プロジェクトプロパティはポリシーの実装に役立つだけで、強制することはできません。

プロパティエディタ

一部のプロパティは、自動化に使用するために、特定の値を使用するか、特定の方法でフォーマットする必要があります。フォーマットを正しく行うために、TortoiseSVN は、可能な値を表示したり、プロパティを個々のコンポーネントに分割したりする、特定のプロパティの編集ダイアログを表示します。

外部コンテンツ

図 4.44. svn:externals プロパティページ

svn:externals property page


svn:externals プロパティを使用すると、「外部アイテム」というセクションで説明されているように、同じリポジトリまたは完全に異なるリポジトリから他のプロジェクトをプルインできます。

外部フォルダーとしてチェックアウトされるサブフォルダーの名前と、外部アイテムの Subversion URL を定義する必要があります。外部を HEAD リビジョンでチェックアウトできるため、リポジトリで外部アイテムが変更されると、ワーキングコピーは更新時にそれらの変更を受け取ります。ただし、外部が特定の安定したポイントを参照するようにする場合は、使用する特定のリビジョンを指定できます。この場合、ペグリビジョンとして同じリビジョンを指定することもできます。外部アイテムが将来のある時点で名前が変更された場合、Subversion はワーキングコピーでこのアイテムを更新できなくなります。ペグリビジョンを指定することにより、Subversion に HEAD ではなくペグリビジョンでその名前を持っていたアイテムを探すように指示します。

HEAD リビジョンを検索 ボタンは、すべての外部 URL の HEAD リビジョンをフェッチし、その HEAD リビジョンを右端の列に表示します。HEAD リビジョンがわかったら、外部を右クリックするだけで、選択した外部を明示的な HEAD リビジョンに固定するコマンドが表示されます。HEAD リビジョンがまだ不明な場合は、右クリックコマンドは最初に HEAD リビジョンをフェッチします。

SVN キーワード

図 4.45. svn:keywords プロパティページ

svn:keywords property page


ファイル内で展開するキーワードを選択します。

EOL スタイル

図 4.46. svn:eol-style プロパティページ

svn:eol-style property page


使用する改行コードスタイルを選択すると、TortoiseSVN は正しいプロパティ値を使用します。

課題追跡システムとの統合

図 4.47. tsvn:bugtraq プロパティページ

tsvn:bugtraq property page


ログメッセージサイズ

図 4.48. ログメッセージサイズのプロパティページ

Size of log messages property page


これらの 3 つのプロパティは、ログメッセージのフォーマットを制御します。最初の 2 つは、メッセージが最小長を満たすまで、コミットまたはロックダイアログの OK を無効にします。境界線の位置は、ログメッセージに幅制限のあるプロジェクトのガイドとして、指定された列幅にマーカーを表示します。値をゼロに設定すると、プロパティが削除されます。

プロジェクト言語

図 4.49. 言語プロパティページ

Language property page


コミットダイアログでログメッセージのスペルチェックに使用する言語を選択します。ファイルリストチェックボックスは、ログメッセージペインを右クリックして ファイルリストを貼り付け を選択すると有効になります。デフォルトでは、Subversion ステータスはローカル言語で表示されます。このボックスをオンにすると、ステータスは常に英語で表示されます。これは、英語のみのログメッセージを必要とするプロジェクト用です。

MIME タイプ

図 4.50. svn:mime-type プロパティページ

svn:mime-type property page


svn:needs-lock

図 4.51. svn:needs-lock プロパティページ

svn:needs-lock property page


このプロパティは、ワーキングコピーでロックが保持されていない場合に、ファイルが読み取り専用としてチェックアウトされるかどうかを制御するだけです。

svn:executable

図 4.52. svn:executable プロパティページ

svn:executable property page


このプロパティは、Unix/Linux システムでチェックアウトしたときにファイルに実行可能ステータスを与えるかどうかを制御します。Windows チェックアウトでは効果がありません。

マージログメッセージテンプレート

リビジョンがワーキングコピーにマージされるたびに、TortoiseSVN はマージされたすべてのリビジョンからログメッセージを生成します。これらは、コミットダイアログの 最近のメッセージ ボタンから利用できます。

次のプロパティを使用して、生成されたメッセージをカスタマイズできます

図 4.53. プロパティダイアログのマージログメッセージテンプレート

Property dialog merge log message templates


tsvn:mergelogtemplatetitle、tsvn:mergelogtemplatereversetitle

このプロパティは、生成されたログメッセージの最初の部分を指定します。次のキーワードを使用できます

{revisions}

マージされたリビジョンのカンマ区切りリスト。例: 3, 5, 6, 7

{revisionsr}

{revisions} と同様ですが、各リビジョンの前に r が付きます。例: r3, r5, r6, r7

{revrange}

マージされたリビジョンのカンマ区切りリスト。可能な場合は範囲にグループ化されます。例: 3, 5-7

{mergeurl}

マージのソース URL。つまり、リビジョンがマージされた場所。

この文字列のデフォルト値は Merged revision(s) {revrange} from {mergeurl}: で、末尾に改行が付きます。

tsvn:mergelogtemplatemsg

このプロパティは、マージされた各リビジョンのテキストをどのように表示するかを指定します。次のキーワードを使用できます

{msg}

マージされたリビジョンのログメッセージ (入力されたとおり)。

{msgoneline}

{msg} と同様ですが、すべての改行はスペースに置き換えられ、ログメッセージ全体が 1 行で表示されます。

{author}

マージされたリビジョンの作成者。

{rev}

マージされたリビジョン自体。

{bugids}

マージされたリビジョンのバグ ID (存在する場合)。

tsvn:mergelogtemplatemsgtitlebottom

このプロパティは、tsvn:mergelogtemplatetitle または tsvn:mergelogtemplatereversetitle で指定されたタイトル文字列の位置を指定します。プロパティが yes または true に設定されている場合、タイトル文字列は上部ではなく下部に追加されます。

重要

これは、マージされたリビジョンがログキャッシュにすでに存在する場合にのみ機能します。ログキャッシュを無効にした場合、またはマージする前にログを最初に表示しなかった場合、生成されたメッセージにはマージされたリビジョンに関する情報は含まれません。

TortoiseSVN ホームページ