git symbolic-ref
优质
小牛编辑
125浏览
2023-12-01
命名
git-symbolic-ref - 读取,修改和删除符号引用
概要
git symbolic-ref [-m <reason>] <name> <ref>git symbolic-ref [-q] [--short] <name>git symbolic-ref --delete [-q] <name>
描述
给定一个参数,读取哪个分支头部给定的符号ref引用并输出其相对于.git/
目录的路径。通常,您会HEAD
以<name>参数的形式提供您的工作树所在的分支。
给定两个参数,创建或更新符号ref <name>以指向给定分支<ref>。
给定--delete
和额外的参数,删除给定的符号参考。
符号ref是一个常规文件,它存储了一个以字符串开头的字符串ref: refs/
。例如,你.git/HEAD
的内容是一个普通文件ref: refs/heads/master
。
选项
-d --delete
删除符号ref <名称>。
-q --quiet
如果<name>不是符号引用,而是分离的HEAD,则不要发出错误消息; 而是静静地退出非零状态。
--short
当示出了作为一个符号REF <名称>的值,尽量缩短值,例如从refs/heads/master
到master
。
-m
使用<reason>更新<名称>的reflog。这仅在创建或更新符号引用时有效。
注意
过去,这.git/HEAD
是一个象征性的链接refs/heads/master
。当我们想切换到另一个分支时,我们做了ln -sf refs/heads/newbranch .git/HEAD
,当我们想知道我们在哪个分支时,我们做到了readlink .git/HEAD
。但符号链接不是完全可移植的,因此它们现在已被弃用,并且默认情况下使用符号引用(如上所述)。
如果符号ref的内容打印正确,git symbolic-ref
将以状态0退出,如果请求的名称不是符号参考,则为状态1;如果发生另一错误,则为128。