11

2つの〜/ .hgrcファイルを保持したい:〜/ .hgrcと〜/ .hgrc.local – 1つは「標準」設定(例username)、もう1つはマシン固有の設定(例:グラフィカルマージの設定)道具)。

どうすればhgでこれを行うことができますか?

たとえば、これは私がVimでそれを行う方法です:

# ~/.vimrc
syntax enable
source ~/.vimrc.local

それで:

# ~/.vimrc.local
let work_code = 'code/work/.*'
if expand('%:p:h') =~ work_code ... fi
4

4 に答える 4

20

Mercurial 1.3以降では、あまり使用されない%includeディレクティブがあります。

差出人man hgrc

   A  line  of  the  form %include file will include file into the current
   configuration file.  The  inclusion  is  recursive,  which  means  that
   included  files  can include other files. Filenames are relative to the
   configuration file in which the %include directive is found.

だから一緒に行く:

   %include ~/.hgrc.local

そして、あなたは行ってもいいはずです。

于 2009-12-08T18:27:52.827 に答える
5

同様の方法で、すべての「ドットファイル」についてこの問題を解決します。ログイン時に、私のシェルはファイルのリスト(hgrc、vimrc、....)をチェックし、それらのいずれかがまたはより古いかどうかをチェックし${that_name}.globalます${that_name}.local。もしそうなら- cat ${that_name}.{global,local} > ${that_name}。シンプルで、これまでのところうまく機能しています。(を使用して)「より良い」方法がありますが、構成%includeファイルを手動で処理することには利点がある場合があります。たとえば、1.3より前のMercurialで機能します。

于 2009-12-12T21:59:03.690 に答える
4

Mercurialは、特定の優先度を持つ多数の構成ファイルをチェックします。このようにして、グローバル、ユーザー固有、およびリポジトリ固有の設定を行うことができます。Mercurialバージョン>=1.4には、これをわかりやすくhg help config説明するコマンドがあります。

$ hg help config
Configuration Files

    Mercurial reads configuration data from several files, if they exist. Below we list the most specific file first.

    On Windows, these configuration files are read:

    - "<repo>\.hg\hgrc"
    - "%USERPROFILE%\.hgrc"
    - "%USERPROFILE%\Mercurial.ini"
    - "%HOME%\.hgrc"
    - "%HOME%\Mercurial.ini"
    - "C:\Mercurial\Mercurial.ini"
    - "HKEY_LOCAL_MACHINE\SOFTWARE\Mercurial"
    - "<install-dir>\Mercurial.ini"

    On Unix, these files are read:

    - "<repo>/.hg/hgrc"
    - "$HOME/.hgrc"
    - "/etc/mercurial/hgrc"
    - "/etc/mercurial/hgrc.d/*.rc"
    - "<install-root>/etc/mercurial/hgrc"
    - "<install-root>/etc/mercurial/hgrc.d/*.rc"

    The configuration files for Mercurial use a simple ini-file format. A configuration file consists of sections, led by a "[section]" header and followed by
    "name = value" entries:

      [ui]
      username = Firstname Lastname <firstname.lastname@example.net>
      verbose = True

    This above entries will be referred to as "ui.username" and "ui.verbose", respectively. Please see the hgrc man page for a full description of the possible
    configuration values:

    - on Unix-like systems: "man hgrc"
    - online: http://www.selenic.com/mercurial/hgrc.5.html

現在の設定は。で一覧表示できますhg showconfig

于 2009-12-16T10:40:23.343 に答える
0

hgrcMercurialはいくつかの異なる場所でファイルを探し、存在する場合はそれらをロードします。システム全体の構成の場合、標準(UNIXの場合)はを使用します/etc/mercurial/hgrc

詳細については、hgrcのマニュアルページのファイルセクションを参照してください。

于 2009-12-08T14:22:24.383 に答える