Colors
根據 git diff –name-status 的狀態為文件名著色
我經常使用
git diff --name-status BRANCH_NAME
來獲取修改文件的列表。是否可以對該命令的輸出進行著色,類似於git status
- 綠色表示添加的文件,藍色表示修改,紅色表示刪除等等。它不是如何為 git 的輸出著色的副本?因為我想為輸出的不同部分著色,所以建議的配置文件更改不適用
我不知道任何官方的方式來做到這一點,但我剛剛寫了這個,它對我有用。
將下面的 bash 腳本放入一個名為的文件中:(
color_git_diff.sh
或任何你想要的)#!/usr/bin/env bash for i in "$@" do if grep -q "^M" <<< "$i" then echo -e "\e[33m $i \e[0m" elif grep -q "^D" <<< "$i" then echo -e "\e[31m $i \e[0m" fi done
應用你會呼叫它的腳本:
git diff --name-status | xargs --delimiter="\n" ./color_git_diff.sh
顯然你不想每次都呼叫它,所以你需要將它放入你的
bashrc
並為其分配一個函式或別名 - 或類似的東西。這只會為修改或刪除的文件生成彩色輸出,並且我將修改後的文件設為黃色 - 我不知道我頭頂上藍色的 ansi 轉義碼是什麼 - 我想可能
\e[36m
嗎?無論如何,如果您想使用它,您可以自己添加它-