Update Object Name in Reference

suggest change


Update the object name which is stored in reference


git update-ref [-m <reason>] (-d <ref> [<oldvalue>] | [--no-deref] [--create-reflog] <ref> <newvalue> [<oldvalue>] | --stdin [-z])

General Syntax

  1. Dereferencing the symbolic refs, update the current branch head to the new object.
git update-ref HEAD <newvalue>
  1. Stores the newvalue in ref, after verify that the current value of the ref matches oldvalue.
git update-ref refs/head/master <newvalue> <oldvalue>

above syntax updates the master branch head to `newvalue` only if its current value is `oldvalue`.

Use -d flag to deletes the named <ref> after verifying it still contains <oldvalue>.

Use --create-reflog, update-ref will create a reflog for each ref even if one would not ordinarily be created.

Use -z flag to specify in NUL-terminated format, which has values like update, create, delete, verify.


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 <ref> with <newvalue> after verifying it does not exist. The given <newvalue> may not be zero.


Delete <ref> after verifying it exists with <oldvalue>, if given. If given, <oldvalue> may not be zero.


Verify <ref> against <oldvalue> but do not change it. If <oldvalue> zero or missing, the ref must not exist.

Feedback about page:

Optional: your email if you want me to get back to you:

Table Of Contents