21

変更時刻でソートされたファイルを一覧表示するにはどうすればよいですか?

システムの変更時間ではなく、git の変更時間が必要です。たとえば、(コミットされた)ファイルがあるREADME場合、

touch README

システムの変更時刻が変更されます...しかし、gitステータスは変更されません。

私が試したら

git ls-files -z | xargs -0 ls  -t

これは、システムの変更時間でソートされます。

git ls-filesgit 変更時間でソートされたファイルを一覧表示するオプションはありますか?

4

5 に答える 5

28

git ls-filesgit 変更時間でソートされたファイルを一覧表示するオプションはありますか?

私はそうは思わない。考えられる方法の 1 つは、ファイルを反復処理し、 を使用してタイムスタンプを取得しgit logsort出力を取得することです。

以下はあなたのために働くかもしれません:

while read file; do echo $(git log --pretty=format:%ad -n 1 --date=raw -- $file) $file; done < <(git ls-tree -r --name-only HEAD) | sort -k1,1n
于 2013-10-14T14:32:58.040 に答える
5

次のコマンドを使用して、フォルダー内のファイルを並べ替えることができました

git ls-files -z -- "${dir}" | xargs -0 -n1 -I{} -- git log -1 --format="%at {}" {} | sort | tail -n1 | cut -d " " -f2-
于 2016-11-10T19:12:02.073 に答える