如何列出按修改時間排序的文件?git ls-files按修改時間排序
我想要git修改時間,而不是系統修改時間。舉例來說,如果我有一個(提交)文件README
,然後
touch README
將改變系統修改時間......但git的地位將保持不變。
如果我嘗試
git ls-files -z | xargs -0 ls -t
這將由系統修改時間進行排序。
是否有任何選項git ls-files
可以列出按其git修改時間排序的文件?
如何列出按修改時間排序的文件?git ls-files按修改時間排序
我想要git修改時間,而不是系統修改時間。舉例來說,如果我有一個(提交)文件README
,然後
touch README
將改變系統修改時間......但git的地位將保持不變。
如果我嘗試
git ls-files -z | xargs -0 ls -t
這將由系統修改時間進行排序。
是否有任何選項git ls-files
可以列出按其git修改時間排序的文件?
是否有任何選項
git ls-files
將列出受 他們的混帳修改時間排序的文件?
我不這麼認爲。一種可能的方式是迭代文件,使用git log
和sort
輸出獲得時間戳。
下可能會爲你工作:
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
我可以使用以下命令
git ls-files -z -- "${dir}" | xargs -0 -n1 -I{} -- git log -1 --format="%at {}" {} | sort | tail -n1 | cut -d " " -f2-
到文件夾中的排序