特定のパターンに一致するファイル、つまりCom.Example/Com.Example.DomainModel23012013101705.somefileextensionを無視する構文を理解しようとしています。変数はファイル名に変更された日付のようです(23012013101705)
[0-9].somefileextensionやその他のパターンをすべて試しましたが無駄になりました。
ありがとう、スティーブン
特定のパターンに一致するファイル、つまりCom.Example/Com.Example.DomainModel23012013101705.somefileextensionを無視する構文を理解しようとしています。変数はファイル名に変更された日付のようです(23012013101705)
[0-9].somefileextensionやその他のパターンをすべて試しましたが無駄になりました。
ありがとう、スティーブン
悲しいことに、Ry4anは間違いを犯しました。Grep()はファイル名では機能しません。
私の「試験場」
>dir /B
.hg
404.php
archive.php
archives.php
comments.php
footer.php
functions.php
header.php
html5.js
image.php
index.php
license.txt
links.php
page.php
readme.txt
screenshot.png
search.php
sidebar.php
single.php
style.css
テスト
>hg locate "set:grep(html5)\.php"
hg: parse error at 11: invalid token
>hg locate "set:grep(html5)"
header.php
readme.txt
注:テキスト「html5」が含まれているが、ファイルhtml5.jsが含まれていないファイルが見つかりました
>hg locate "set:s[a-z]+\.php"
abort: \.php not under root
>hg locate "set:s[a-z]+.php"
>hg locate "set:s[a-z]+"
hg: parse error at 7: not a prefix: end
>hg locate "set:s\w+"
hg: parse error at 4: not a prefix: end
set:
プレフィックスと正規表現を使用したすべてのテストが失敗しました
セット付きのさまざまなグロブパターン:
>hg locate "set:s**.php"
search.php
sidebar.php
single.php
>hg locate "set:s**.*"
screenshot.png
search.php
sidebar.php
single.php
style.css
>hg locate "set:s**e.*"
single.php
style.css
ファイルセットの正規表現パターン
>hg locate "re:s[a-z]+.php"
search.php
sidebar.php
single.php
>hg locate "re:s[a-z]+."
screenshot.png
search.php
sidebar.php
single.php
style.css
履歴書
hg forget "re:Com\.Example\.DomainModel[0-9]+\.somefileextension$"
また
hg forget "set:Com.Example.DomainModel**.somefileextension"
と同じセットをhgignoreに
グロブではなく正規表現を使用してください。Mercurialは、どちらかをサポートする場所であればどこでも両方をサポートします。それは次の.hgignore
ようになります:
syntax: regexp
[0-9]\.somefileextension
その正規表現は、試行したグロブと一致しますが、もちろん、次のように絞り込むことができます。
syntax: regexp
^Com\.Example/Com\.Example\.DomainModel\d+\.somefileextension$