在不区分大小写的文件系统上,我可以在git命令中引用head,它的工作方式类似于HEAD。
git rebase -i head~4在一个区分大小写的系统上,我必须准确地引用HEAD。
git rebase -i HEAD~4我想念我的手指可以轻易地吐出head,而不需要移动,而且我经常引用HEAD,所以我想将head化名为head。
我找到了一种方法,但它有一些缺点。
git symbolic-ref head HEAD我必须在每个回购中手动设置它(虽然有一种方法可以在git init上使用模板自动完成)。
我也不明白git symbolic-ref的一些行为。例如,我可以为ref创建任意别名,
$ 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,但我无法做到这一点:
$ git symbolic-ref --delete foo
error: refusing to update ref with bad name 'foo'我对象征裁判有什么误解?这是使用它们的坏方法吗?
更新
如果我将head引用创建为:
git symbolic-ref --delete "refs/heads/head"然后,它生活在.git/refs/heads/head中(而不是.git/head,就像我最初尝试的那样)。我仍然可以把它称为head,
git log -1 head和符号-ref更新/删除按预期工作。
git symbolic-ref --delete refs/heads/head发布于 2018-02-15 15:03:18
只需使用现有的@同义词,git log @{-1}来显示您最近的结帐记录将比git log head@{-1}快,git show @~显示您的工作树的gp提交要比git show head~快。
我认为,对于不启动refs/的折射名,git会在内部使用这类名称,但它们就像编程语言中的保留名称,无论何时您为自己的目的使用一个名称,您都处于一种罪恶的状态。
https://stackoverflow.com/questions/48809887
复制相似问题