为什么“ git push origin @”不起作用?

李圣贤|

我们可以像下面这样推动分支的头

$ git push origin HEAD

并且,我们可以使用@的别名HEAD

$ git show @

那为什么下面的命令给我一个错误?

$ git push origin @
fatal: remote part of refspec is not a valid name in @
用户名

尽管@可以用来指定HEAD,但首先需要@将其解析为ref。的语法git push采用refspec,在这种情况下,@具有两种不同的含义,其中只有一种是ref。

对于在的Refspec的语法git push[+]<src>[:<dst>]+是可选的。:<dst>如果可以从解析,则为可选<src>

git push origin HEAD之所以起作用,是因为HEAD它被视为非常特殊的情况:HEAD通常是对特定分支的符号引用,并git push解析符号引用并<dst>根据指向的分支名称进行选择。

例如,您还可以带有git symbolic-ref MYMASTER refs/heads/master,后跟git push origin MYMASTER

git push origin HEAD~0失败,因为它将转换为git push origin HEAD~0:HEAD~0,并且远程refnameHEAD~0无效,即使HEAD~0必须始终指定与相同的提交HEAD

git push origin @失败,因为它将转换为git push origin @:@,并且远程refname@无效,即使@必须始终指定与相同的提交HEAD

git push origin @:HEAD如果您有一个名为的远程分支,则几乎可以使用HEAD这不是refspec是simple的特殊情况HEAD,因此这不会HEAD基于任何符号ref来解决

git push origin @:master 确实有效。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么Array.push.apply不起作用?

为什么我必须“ git push --set-upstream origin <branch>”?

git push origin HEAD是什么意思?

什么是“ git remote add ...”和“ git push origin master”?

为什么使用git push gerrit HEAD:refs / for / master而不是git push origin master

git push origin HEAD和git push origin [current-branch-name]有什么区别?

为什么“ git fetch origin branch:branch”仅在非当前分支上起作用?

git:git push -u origin origin:master

“ git push”和“ git push origin master”有什么区别?

为什么git push origin master会绘制ASCII艺术?

git push -u origin-所有不再起作用

为什么git remote add不起作用?

为什么带有push的git别名不起作用?

为什么Git的单键设置不起作用?

为什么在“ git push origin”中使用“ HEAD:master”而不是“ master”

git hooks pre-push不起作用

为什么全局git配置“ remote.origin.push”会覆盖本地的“ remote.origin.push”?

为什么“ git push origin master”不起作用?

为什么push在此cookie数组上不起作用?

为什么我的AngularFire push()不起作用?

为什么在执行“ git push origin --delete BRANCHNAME”后“ git push”有效?

为什么“ git merge origin”有时会起作用?

git push origin master问题

为什么,在 Codeigniter Rest-Server 中,Access-Control-Allow-Origin 不起作用

`git push origin master` 不起作用

git push 对 gitlab (mingw) 不起作用——如果 ssh 工作有什么问题?

为什么 git push heroku <branchname>:main 不起作用?

为什么 history.push 在“/”路由中不起作用?

為什麼“git fetch origin bugfix”不起作用?