table of contents
other versions
- wheezy 1:1.7.10.4-1+wheezy3
- wheezy-backports 1:1.9.1-1~bpo70+2
- jessie 1:2.1.4-2.1+deb8u2
- jessie-backports 1:2.11.0-3~bpo8+1
- testing 1:2.11.0-3
- unstable 1:2.11.0-4
- experimental 1:2.13.1+next.20170610-1
GIT-UPDATE-REF(1) | Git Manual | GIT-UPDATE-REF(1) |
NAME¶
git-update-ref - Update the object name stored in a ref safelySYNOPSIS¶
git update-ref [-m <reason>] (-d <ref> [<oldvalue>] | [--no-deref] <ref> <newvalue> [<oldvalue>] | --stdin [-z])
DESCRIPTION¶
Given two arguments, stores the <newvalue> in the <ref>, possibly dereferencing the symbolic refs. E.g. git update-ref HEAD <newvalue> updates the current branch head to the new object.git update-ref HEAD "$head"
echo "$head" > "$GIT_DIR/HEAD"
update SP <ref> SP <newvalue> [SP <oldvalue>] LF create SP <ref> SP <newvalue> LF delete SP <ref> [SP <oldvalue>] LF verify SP <ref> [SP <oldvalue>] LF option SP <opt> LF
update SP <ref> NUL <newvalue> NUL [<oldvalue>] NUL create SP <ref> NUL <newvalue> NUL delete SP <ref> NUL [<oldvalue>] NUL verify SP <ref> NUL [<oldvalue>] NUL option SP <opt> NUL
Set <ref> to <newvalue> after
verifying <oldvalue>, if given. Specify a zero <newvalue> to
ensure the ref does not exist after the update and/or a zero <oldvalue>
to make sure the ref does not exist before the update.
create
Create <ref> with <newvalue> after
verifying it does not exist. The given <newvalue> may not be zero.
delete
Delete <ref> after verifying it exists
with <oldvalue>, if given. If given, <oldvalue> may not be
zero.
verify
Verify <ref> against <oldvalue>
but do not change it. If <oldvalue> zero or missing, the ref must not
exist.
option
Modify behavior of the next command naming a
<ref>. The only valid option is no-deref to avoid dereferencing a
symbolic ref.
LOGGING UPDATES¶
If config parameter "core.logAllRefUpdates" is true and the ref is one under "refs/heads/", "refs/remotes/", "refs/notes/", or the symbolic ref HEAD; or the file "$GIT_DIR/logs/<ref>" exists then git update-ref will append a line to the log file "$GIT_DIR/logs/<ref>" (dereferencing all symbolic refs before creating the log name) describing the change in ref value. Log lines are formatted as: 1.oldsha1 SP newsha1 SP committer LF
Where "oldsha1" is the 40 character hexadecimal value previously
stored in <ref>, "newsha1" is the 40 character hexadecimal
value of <newvalue> and "committer" is the committer’s
name, email address and date in the standard Git committer ident format.
1.oldsha1 SP newsha1 SP committer TAB message
LF
Where all fields are as described above and "message" is the value
supplied to the -m option.
GIT¶
Part of the git(1) suite04/08/2014 | Git 1.9.1 |