Git を使用してターミナルで 1 つの変数を削除するにはどうすればよいでしょうか?

Git を使用してターミナルで 1 つの変数を削除するにはどうすればよいでしょうか?

ターミナルで git status を使用しようとすると問題が発生します。

fatal: bad numeric config value '=' for 'color.ui': invalid unit

調べてみると、color.ui変数が2つあることに気付きました

git config --list
credential.helper=osxkeychain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
user.name=Charles Pine
[email protected]
color.ui=auto
color.ui==

2 番目の color.ui を削除する方法を誰か知っていますか? ご協力ありがとうございます。これは私の最初の投稿の 1 つなので、何か間違ったことをしてしまった場合は心からお詫び申し上げます。

答え1

これらの値はそれぞれ別のファイル(システム/グローバル/ローカルなど)に設定されていることに気づくでしょう...両方の値が 1 つの設定ファイルから取得される可能性があります。

を参照してくださいgit configドキュメンテーション詳細については。

位置情報に基づく削除

誤ったエントリがどこから来ているのかを判断するために、次の各コマンドを実行してみてください。

git config --system --get color.ui
git config --global --get color.ui
git config --local  --get color.ui

どこから来たのかがわかったら、必要に応じて--system/ --global/--localフラグを追加して削除します。たとえば、ここではローカル値を設定解除します。

git config --local --unset color.ui

価値に基づく削除

--unset両方の値が実際に同じファイルからのものである場合は、値に一致する正規表現パターンをモードに提供することもできます。

あなたの場合 ( =)、パターンはかなり安全ですが、次のような特定の特殊な正規表現文字には注意してください。

  • .- 任意の1文字
  • *- 0以上
  • +- 1つ以上
  • 等...

あなたにとっては、これがうまくいくはずです:

git config --unset color.ui =

Git の設定について説明する場合、次の場所が利用できます。

  • --system- システム全体の構成
    • ${prefix}/etc/gitconfig${prefix}通常は空)に格納されます
  • --global- ユーザーのグローバル設定
    • 通常はどちらか~/.gitconfigまたは~/.config/git/config
  • --local- リポジトリ固有の設定
  • --file ${filename}- 指定された別のファイル

これらのファイルは手動で編集することも可能です。これらはテキストベースで、INIファイルつまり、必要インターフェイスを使用してgit config値を検索または変更します。

関連情報