在参考中更新对象名称

使用

更新存储在引用中的对象名称

概要

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

一般语法

  1. 取消引用符号引用,将当前分支头更新为新对象。

    git update-ref HEAD <newvalue>
    
  2. 在验证 ref 的当前值与 oldvalue 匹配后,将 newvalue 存储在 ref 中。

    git update-ref refs/head/master <newvalue> <oldvalue>
    

    只有当前值为 oldvalue 时,上面的语法才会将 master 分支头更新为 newvalue

在验证它仍包含 <oldvalue> 后,使用 -d 标志删除命名的 <ref>

使用 --create-reflog,update-ref 将为每个 ref 创建一个 reflog,即使通常不会创建一个 reflog。

使用 -z 标志以 NUL 终止格式指定,其格式包括 update,create,delete,verify。

更新

如果给出,在验证 <oldvalue> 之后将 <ref> 设置为 <newvalue>。指定零 <newvalue> 以确保更新后 ref 不存在和/或零 <oldvalue> 以确保在更新之前 ref 不存在。

创建

在验证它不存在后,用 <newvalue> 创建 <ref>。给定的 <newvalue> 可能不为零。

删除

如果给出,在验证它与 <oldvalue> 存在后删除 <ref>。如果给出,<oldvalue> 可能不为零。

校验

验证 <ref><oldvalue> 但不改变它。如果 <oldvalue> 为零或缺失,则 ref 必须不存在。