首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Git:别名"head“到"HEAD”,使用符号-ref

Git:别名"head“到"HEAD”,使用符号-ref
EN

Stack Overflow用户
提问于 2018-02-15 14:44:03
回答 1查看 774关注 0票数 1

在不区分大小写的文件系统上,我可以在git命令中引用head,它的工作方式类似于HEAD

代码语言:javascript
复制
git rebase -i head~4

在一个区分大小写的系统上,我必须准确地引用HEAD

代码语言:javascript
复制
git rebase -i HEAD~4

我想念我的手指可以轻易地吐出head,而不需要移动,而且我经常引用HEAD,所以我想将head化名为head

我找到了一种方法,但它有一些缺点。

代码语言:javascript
复制
git symbolic-ref head HEAD

我必须在每个回购中手动设置它(虽然有一种方法可以在git init上使用模板自动完成)。

我也不明白git symbolic-ref的一些行为。例如,我可以为ref创建任意别名,

代码语言:javascript
复制
$ git log -1 my-feature
5bb7f1e add new feature
$ git symbolic-ref foo my-feature
$ git log -1 foo
5bb7f1e add new feature

根据git-symbolic-ref手册页面,我也可以删除符号-ref,但我无法做到这一点:

代码语言:javascript
复制
$ git symbolic-ref --delete foo
error: refusing to update ref with bad name 'foo'

我对象征裁判有什么误解?这是使用它们的坏方法吗?

更新

如果我将head引用创建为:

代码语言:javascript
复制
git symbolic-ref --delete "refs/heads/head"

然后,它生活在.git/refs/heads/head中(而不是.git/head,就像我最初尝试的那样)。我仍然可以把它称为head

代码语言:javascript
复制
git log -1 head

和符号-ref更新/删除按预期工作。

代码语言:javascript
复制
git symbolic-ref --delete refs/heads/head
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-15 15:03:18

只需使用现有的@同义词,git log @{-1}来显示您最近的结帐记录将比git log head@{-1}快,git show @~显示您的工作树的gp提交要比git show head~快。

我认为,对于不启动refs/的折射名,git会在内部使用这类名称,但它们就像编程语言中的保留名称,无论何时您为自己的目的使用一个名称,您都处于一种罪恶的状态。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48809887

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档