git log --statでパスの部分省略を回避する方法
この記事に関連して。
git log --stat
を使ったときに、出力結果のパスが一部省略されてしまったときは--stat-width=400
みたいにオプションを指定して表示幅を調整してあげればOK
単体でgit log --stat
を実行したときは全てフルパスで出力されていたけれど、シェルスクリプト内に書き込んで実行するとなぜか一部省略された状態のパスが次のコマンドに渡されていた。
いつもはこんな感じの出力結果でも、実行環境によってパスの表示が部分的に省略されることがあるみたい。
commit 36b91ec6693d94292c3bdc8abeadb0c86a5f2a09 (HEAD -> main, origin/main)
Author: Makoto Ohnami
Date: Thu Dec 1 14:46:41 2022 +0900
これでどうでしょう
.github/workflows/deployment.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 128459a762526fa98eac8812c7b48d7fc94de235
Author: aaa
Date: Thu Dec 1 13:03:41 2022 +0900
test
public_html/test.html | 1 +
1 file changed, 1 insertion(+)
commit 5b0d152a1c4085b27cd9fc01a371a777f011de23
Author: bbb
Date: Thu Dec 1 12:52:34 2022 +0900
バナー
public_html/banner/sample1.jpg | Bin 14625 -> 16805 bytes
public_html/banner/sample2.jpg | Bin 82418 -> 87955 bytes
2 files changed, 0 insertions(+), 0 deletions(-)
public_html/banner/sample1.jpg
の部分が .../banner/sample1.jpg
みたいになってしまうことがある。
これだと困ることがある。たとえば、正規表現で文字列抽出なんかしている場合がまさにそう。...
で省略されてしまうと正しく判断ができない。
で、そんなときは--stat-width=400
を付与してあげると、幅400まではちゃんと省略しない状態で結果を返してくれるようになる。
これは助かる。
自分はgit log --stat
で使ったけど、以下のリンク先のようにgit diff
なんかでも同じ対応で調整ができるみたい。
[git]git diff –stat でパスを省略しない方法 - dackdive’s blog
この記事の環境情報
- git 2.38.1
- ワールドカップで日本がスペインに勝ったその日の朝
Gitに関する他の記事を読む
最近の記事を読む
- Flutterでcontextを使わずにlocale情報を取得する
- Cloud RunでIAPを有効にしようとしてハマったこと
- slimでtype='application/ld+json'のscriptタグを書く
- タグマネージャーでjsのloadイベントを発火させたいとき
- mysqlコマンドを実行してERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)と言われたら