SYNOPSIS
git symbolic-ref [-m <reason>] <name> <ref> git symbolic-ref [-q] [--short] [--no-recurse] <name> git symbolic-ref --delete [-q] <name>
DESCRIPTION
引数が1つ与えられると、指定されたシンボリックrefが参照するブランチヘッドを読み取り、 .git/
ディレクトリを基準にしてそのパスを出力します。 通常、作業ツリーがどのブランチにあるかを確認するには、 <name> 引数として HEAD
を指定します。
2つの引数を与えると、指定されたブランチ <ref> を指すようにシンボリックref <name> を作成または更新します。
--delete
と追加の引数を指定すると、指定されたシンボリックrefが削除されます。
シンボリックrefは、 ref: refs/
で始まる文字列を格納する通常のファイルです。 たとえば、 .git/HEAD
は、内容が ref: refs/heads/master
である通常のファイルです。
OPTIONS
-
-d
-
--delete
-
シンボリックref <name> を削除します。
-
-q
-
--quiet
-
<name> がシンボリックrefではなく、切り離されたHEAD(detached HEAD)である場合は、エラーメッセージを発行しないでください。 代わりに、ゼロ以外のステータスで何も言わずに終了します。
-
--short
-
<name> の値をシンボリックrefとして表示する場合は、値を短くする事を試みます。例えば
refs/heads/master
からmaster
へ。 -
--recurse
-
--no-recurse
-
<name> の値をシンボリック ref として表示するときに、 <name> が別のシンボリック ref を参照している場合、 結果が最早シンボリック ref を指さなくなるまで、そのシンボリック ref のチェーンをたどります(
--recurse
、これがデフォルトです)。--no-recurse
は、 シンボリック ref の単一レベルのみを逆参照した後に停止します。 -
-m
-
<name> のreflogを <reason> で更新します。これは、シンボリックrefを作成または更新する場合にのみ有効です。
NOTES
以前は、 .git/HEAD
は refs/heads/master
を指すシンボリックリンクでした。別のブランチに切り替えたい場合は、 ln -sf refs/heads/newbranch .git/HEAD
を実行し、現在のブランチを確認したい場合は、 readlink .git/HEAD
を実行しました。 ただし、シンボリックリンクは完全に移植可能ではないため、非推奨になり、(上記のとおり)シンボリックrefがデフォルトで使用されます。
git symbolic-ref は、シンボリックrefの内容が正しく出力された場合はステータス0で終了し、要求された名前がシンボリックrefでない場合はステータス1で終了し、別のエラーが発生した場合は128で終了します。
GIT
Part of the git(1) suite