この文脈では、gitbranchの意味を理解してください。

この文脈では、gitbranchの意味を理解してください。

このコードの意味を理解しようとしています。

function git_branch {
    git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ \1/'
}

しかし、理解できません。一部の人はこのコードを端末を設定するためのコードと呼びますが、私はこの設定がよく理解されていません。

誰かが私にこれを説明できますか?

答え1

この関数は現在のgitブランチの名前を返します。

具体的には:

gitブランチ - 色なし

リポジトリの分岐リストは次のように返されます。

  feature/XYZ-124
* master
  release/1.10
  release/1.11
  release/1.12

sed -e '/^[^*]/d'

「*」で始まる行を除くすべての行を削除します(現在の四半期です)。

* master

それから:

's/* (.*)/ \1/'

支店名が抽出されます(「*」文字を除く)。

 master

はい

>git_branch
 master

答え2

あなたの

function git_branch {
    git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ \1/'
}

わからない人が書いたテキスト処理ハックです。

git rev-parse --abbrev-ref HEAD

関連情報