現在ソース管理下にあるすべてのファイルをリストするコマンドがMercurialにありますか?
私はdir /s
フォルダーとサブフォルダー内のすべてのファイルを一覧表示しますが、リポジトリに追加されたものがわかりません。さまざまな除外されたファイルの種類とフォルダーがあり、.hgignoreファイルに設定する前に、それらがいずれも追加されていないことを確認します。
hg status --all
は、ツリー内のすべてのファイルをリストし、ステータスを示す文字を付けます。Mは変更済み、Cはクリーン(hgが所有)、Iは無視されます。
無視ファイルの場合は、hg status -i
。次のコミットでaddedになるファイルだけに、hg status -a
。これらは、知っておくべきことだけを示しており、長いファイルリストをスキャンする必要はありません。
hg locate
コマンドもチェックアウトできます。ファイルを特定のディレクトリに制限する場合は、-I
オプションとともに使用します。
リポジトリ内のすべてのファイルをリストするには:
hg locate
リポジトリ(「ルート」)ディレクトリから:
hg locate -I dir/sub_dir/dir_of_interest
-I
に渡されるパスは、コマンドを実行するディレクトリに応じて変更する必要があります。上記の例でdir
ディレクトリーからコマンドを実行する場合、以下を見つけるために引数を変更する必要があります。
hg locate -I sub_dir/dir_of_interest
出力ファイルのリストは同じままで、リポジトリ内の各ファイルのフルパスが表示されます。
詳細については、hg help -v locate
を試してください。
hg manifest
はリポジトリ内のファイルのみをリストしますが、hg status --all
は、リポジトリの構造内のすべてのファイルをリストし、追跡されているマーカーと追跡されていないマーカーを含めます。
onlyignoredファイルをリストするには、hg status -i
を実行します。
追加ファイルの場合は、hg status -a
を実行します。
入力するのが気に入らない場合は、これらをhg sta -i
およびhg sta -a
に短縮できます。
status
のこの2つの使用法はlocate
よりも単純であり、懸念している特定のファイル状態を提供するため、エラーが大幅に少なくなります。
hg status
の詳細Mercurialリポジトリ内のすべてのファイルを一覧表示するには、hg status --all
を実行します。
ファイルには、リストされるときにそれらの前に接頭辞が付けられます。
M = modified
A = added
R = removed
C = clean
! = missing (deleted by non-hg command, but still tracked)
? = not tracked
I = ignored
フォルダ内のファイルのみを一覧表示する場合は、パスを指定できます。
hg st --all MyFolder
– MyFolderのすべてのファイルhg sta -i MyFolder
– MyFolderのファイルを無視しました。「無視」の-i
および「追加」の-a
と同様に、特定のステータスを持つファイルのみを一覧表示する他のフラグを使用できます。
help
の取得status
コマンドの包括的な説明については、 他の非常に有用な回答 をお読みください。作者がaskingによって次のようにstatus
コマンドについて上記のすべてを発見できることを示すことを試みたため、それは賛成票を失いました:
hg help status
Mercurialに、このようなコマンドについて教えてもらうことができます。また、Mercurialのコマンドのリストが必要な場合は、hg help
と入力します。