2010-12-07 7 views
2

続くと何も無視されていないとして、私の.hgignoreファイルの内容は:私の.hgignoreファイルに何が問題なのですか? (何も無視されていない)

^nbproject$ 
^.htaccess$ 
^my.conf$ 
/media/images/captcha/.*\.jpg$ 

私は、メインプロジェクトのリポジトリフォルダに、作業ディレクトリにファイルを配置しようとしました。

どういうところが間違っていますか?助けてください。

+0

なぜこのgitにラベルを付けましたか? –

+1

@Alex:git関連タグはここでは適用されないように削除しました。 – bernie

答えて

4

は、ファイルの先頭に次の行を追加します。

syntax: regexp 

を.hgignoreファイルが行くべき場所については、https://www.mercurial-scm.org/wiki/.hgignore

.hgignoreファイル座っあたりの作業 ディレクトリに、 .hgフォルダの横に表示されます。

+0

彼は '' .hg'を意味する "main project repository folder"と言った。彼は '' .hg'の上のレベルである "作業ディレクトリ"に2回目は正しいはずです。 –

+0

ありがとう、Ry4an。私は常に '.hg'を' .hg'ディレクトリと同じレベルに置きます。ドキュメントへの参照を追加しました。 – bernie

+1

うん、同じレベルで正しいです。彼は '.hg'で尋ねましたが、うまくいきません。 –

11

syntax:regexp - これがデフォルトです。

のようなレイアウトに見えるようにするには、.hgフォルダ上のディレクトリにファイルを配置する必要があります:あなたは、あなたのファイルパス内のすべてのドットをエスケープする必要が

--yourepo 
| 
+--- .hgignore 
+--- .htaccess 
+--- .hg 

。これを試してください:

^nbproject$ 
^\.htaccess$ 
^my.conf$ 
/media/images/captcha/.*\.jpg$ 

ファイルをまだ追加していないか、またはコミットしていないことを確認する必要があります。 .hgignoreファイルはaddを上書きしません。ワイルドカードを使用して追加したり、.hgstatusで無視された(追加されていない)ものを見ることができなくなります。これらのファイルを既に追加している場合は、それらが無視される前にhg forgetにする必要があります。

何の作業はこれをしようとした場合:

hg status --all 

を、出力を投稿してください。

+0

+1は非常に完全な答えです。あなたの記事のおかげで私は "デフォルトの構文はPython/Perlスタイルの正規表現です。" - http://www.selenic.com/mercurial/hgignore.5。html#syntax – bernie

+0

+1 2年以上経ってからこの回答がもう一度役立つことが判明しました。 – LihO

+0

喜んで助けてくれるでしょう。 :) –

1

このような基本的な無視には、より単純なglob構文を使用するべきです(syntax: globディレクティブを明示的に使用する必要があります)。また、技術的には '。'は特別な正規表現文字なのでエスケープする必要がありますが、 ''以来運がいいです。リテラル '。'を含む任意の文字にマッチします。しかし、このような混乱は、単純なグロブメカニズムの使用についての私の指摘を単純に示しています。

1

hgは、UTF-8 BOMで始まるファイルの場合は.hgignoreファイルを処理できません。これはWindowsのメモ帳のデフォルト動作であるため、注意する必要があります。

+0

私はこれを仮定するつもりですが、ユーザー専用の無視ファイルは、私がWindowsのコンソールからコードのいくつかの行をSciteに貼り付けた後に私の上に出てきました。それはちょうど素晴らしいです。 –

関連する問題