さて、私はこのためのシェルスクリプトを作成することができました。正常に動作するかどうか教えてください。
アップデート:
i=0; git rev-list HEAD package.json | while read sha1; do; git show "$sha1:package.json" > "$(printf "%04d" $i)-$sha1-package.json"; ((i++)); done
出力します:
$ ls *-package.json | cat
0000-a15147199edff1b1c0fab89c66214abfb8c65d7c-package.json
0001-51feba61197b837b7d55754a56e12f66f0624ba1-package.json
0002-ed9e34482a303e7e64c397f89533dbe64f51cfbf-package.json
0003-d01253e20158f53c08aa6bc0c1cf66806cd19148-package.json
0004-d57363e800535a7400fde56e97d0a4cd424cffbb-package.json
0005-6e995583a11b63bf1d94142da6408955ee93e7cc-package.json
0006-6bc2a87943f59ad277cdee26aec1c25949c0f091-package.json
0007-e06a8cae3a1de58b770a66cbd124cf50e809fb31-package.json
0008-81bf63359641255dfd340714d0635be03bda8de9-package.json
0009-95559f5117c8a21c1b8cc99f4badc320fd3dcbda-package.json
0010-5e906366dd86dda95df050257513c95834020e5e-package.json
0011-717cb2a5c7909ed16f7c599b02759b27fd2e4258-package.json
0012-f18b75940e61a52ef9c0cf41a4bda3bcdae5c46c-package.json
0013-3c86547a3b841807c4744af0fa4ee3894cc17a33-package.json
0014-d5658e978d9a7234e537d57c45069ce223cb3853-package.json
0015-286c4d91dde12ba32f4a56273d05374b1cbb79e7-package.json
0016-46d680458b74fcf956f6161a2b73b6b00fc2541d-package.json
0017-e64f89d9aaf26c2dae6c7f1ef29a2d3cadd0b4b2-package.json
0018-bd84aad6cdde8cf3ce7842df1febb82fe9816647-package.json
0019-6cf1542a8b823c6bdacf7e6e01dfcb58e9949ff4-package.json
0020-1434b5b56756d02190afe552b626823c97b11a49-package.json
並べ替えたときに正しい順序のままになります。
オリジナル:
i=0; git rev-list HEAD package.json | while read sha1; do; git show "$sha1:package.json" > "$i-$sha1-package.json"; ((i++)); done
package.json
3か所すべてで必要なファイルに置き換えます。
これにより、次のようなファイルが作成されます。
$ ls *-package.json | cat
0-a15147199edff1b1c0fab89c66214abfb8c65d7c-package.json
1-51feba61197b837b7d55754a56e12f66f0624ba1-package.json
10-5e906366dd86dda95df050257513c95834020e5e-package.json
11-717cb2a5c7909ed16f7c599b02759b27fd2e4258-package.json
12-f18b75940e61a52ef9c0cf41a4bda3bcdae5c46c-package.json
13-3c86547a3b841807c4744af0fa4ee3894cc17a33-package.json
14-d5658e978d9a7234e537d57c45069ce223cb3853-package.json
15-286c4d91dde12ba32f4a56273d05374b1cbb79e7-package.json
16-46d680458b74fcf956f6161a2b73b6b00fc2541d-package.json
17-e64f89d9aaf26c2dae6c7f1ef29a2d3cadd0b4b2-package.json
18-bd84aad6cdde8cf3ce7842df1febb82fe9816647-package.json
19-6cf1542a8b823c6bdacf7e6e01dfcb58e9949ff4-package.json
2-ed9e34482a303e7e64c397f89533dbe64f51cfbf-package.json
20-1434b5b56756d02190afe552b626823c97b11a49-package.json
3-d01253e20158f53c08aa6bc0c1cf66806cd19148-package.json
4-d57363e800535a7400fde56e97d0a4cd424cffbb-package.json
5-6e995583a11b63bf1d94142da6408955ee93e7cc-package.json
6-6bc2a87943f59ad277cdee26aec1c25949c0f091-package.json
7-e06a8cae3a1de58b770a66cbd124cf50e809fb31-package.json
8-81bf63359641255dfd340714d0635be03bda8de9-package.json
9-95559f5117c8a21c1b8cc99f4badc320fd3dcbda-package.json