git-symbolic-ref(1)
===================

NAME
----
git-symbolic-ref - Read and modify symbolic refs

SYNOPSIS
--------
'git-symbolic-ref' [-q] [-m <reason>] <name> [<ref>]

DESCRIPTION
-----------
Given one argument, reads which branch head the given symbolic
ref refers to and outputs its path, relative to the `.git/`
directory.  Typically you would give `HEAD` as the <name>
argument to see on which branch your working tree is on.

Give two arguments, create or update a symbolic ref <name> to
point at the given branch <ref>.

A symbolic ref is a regular file that stores a string that
begins with `ref: refs/`.  For example, your `.git/HEAD` is
a regular file whose contents is `ref: refs/heads/master`.

OPTIONS
-------

-q::
--quiet::
	Do not issue an error message if the <name> is not a
	symbolic ref but a detached HEAD; instead exit with
	non-zero status silently.

-m::
	Update the reflog for <name> with <reason>.  This is valid only
	when creating or updating a symbolic ref.

NOTES
-----
In the past, `.git/HEAD` was a symbolic link pointing at
`refs/heads/master`.  When we wanted to switch to another branch,
we did `ln -sf refs/heads/newbranch .git/HEAD`, and when we wanted
to find out which branch we are on, we did `readlink .git/HEAD`.
This was fine, and internally that is what still happens by
default, but on platforms that do not have working symlinks,
or that do not have the `readlink(1)` command, this was a bit
cumbersome.  On some platforms, `ln -sf` does not even work as
advertised (horrors).  Therefore symbolic links are now deprecated
and symbolic refs are used by default.

git-symbolic-ref will exit with status 0 if the contents of the
symbolic ref were printed correctly, with status 1 if the requested
name is not a symbolic ref, or 128 if another error occurs.

Author
------
Written by Junio C Hamano <junkio@cox.net>

GIT
---
Part of the linkgit:git[1] suite
