7

GitHubでは、各フォルダーページにこの優れた機能があり、ファイル名とそのファイルへの最後のコミットの経過時間が一覧表示されます。これはls -lコマンドに似ています。

コマンドラインからこの動作を模倣する方法はありますか?何かのようなもの

git ls-files -l

sjasの答えに基づいて、これは私のために働きます

ls | while read aa
do
  git log -1 --format="%ai  $aa" "$aa"
done
4

1 に答える 1

3
$ for a in $(ls); do git log --pretty=format:"%h%x09%an%x09%ad%x09$a" -1 -- "$a"; done
e76b    sjas    Tue Jul 24 21:55:20 2012 +0200  bashscripts/
68af    sjas    Wed Jul 25 13:49:26 2012 +0200  links
83c9    sjas    Tue Jul 24 15:21:09 2012 +0200  rndm/
aedf    sjas    Tue Jul 24 15:14:12 2012 +0200  temp/
a643    sjas    Tue Jul 24 21:48:19 2012 +0200  tips/
f71d    sjas    Tue Jul 24 19:26:20 2012 +0200  todo

https://stackoverflow.com/a/469238/805284から取得

これが奇妙に見える場合:
私のSHA1は、私ので4つの数字に省略さcore.abbrev=4れてい.gitconfigます。

しかし、多分あなたはここでこれを使用しています:

$ for a in $(ls); do git log --pretty=format:"%h%x09$a%x09%s" -1 -- "$a"; done
e76b    bashscripts/   added pushd/popd/dirs shortcuts!!!
68af    links          fastcommit
83c9    rndm/          further cleanup
aedf    temp/          tempcommit
a643    tips/          added disk usage script and pushd/popd annotation
f71d    todo           fastcommit
于 2012-07-25T12:06:50.513 に答える