提问人:Divik 提问时间:7/27/2023 最后编辑:vimuthDivik 更新时间:7/27/2023 访问量:80
无法将 refs 推送到远程
Can't push refs to remote
问:
首先显示此错误,然后在输出终端中显示
Failed to execute git {
"exitCode": 1,
"gitErrorCode": "PushRejected",
"gitCommand": "push",
"stdout": "",
"stderr": "To https://github.com/deepansh-divik/E-Commerce-Website\n ! [rejected] main -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/deepansh-divik/E-Commerce-Website'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. Integrate the remote changes (e.g.\nhint: 'git pull ...') before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"
}
我一直在努力推动,但没有任何效果。 它说拉取集成,但是当我尝试拉取变基时 它说:当前分支没有跟踪信息。
帮我解决这个问题,我是 git 的乞丐,我正在用 vscode 做这件事。
我试图将我的文件推送到存储库,但它说它没有集成,我必须拉动才能集成,当我看到它说没有跟踪信息时。 我也试图将 main 发布到 github,但它被拒绝了,并且我在开头描述了错误。我正在使用 vs 代码,有人可以给我一个非常直接的方法来解决这个问题我是 git 的新手
答:
1赞
PickledPenguins
7/27/2023
#1
对于第一个错误:最有可能的是,您的本地分支指向已更新的远程分支。这意味着,其他人可能已经将他们的更改推送到同一分支。因此,git 告诉你,在推送到远程之前,你需要将这些更改合并到你的分支中,这将通过调用“git pull”来启动。但是,由于第二个问题,您显然无法执行此操作。
第二个问题:调用 git pull 时,git 告诉你你没有跟踪信息。这通常意味着您所在的分支未链接到远程分支。要解决此问题,您可以使用:
git branch --set-upstream <remote repo name> <branch name>
然后再次调用 git pull。
你没有发布你的命令,所以这是基于很多猜测。例如,如果您没有将本地链接到远程,并且进行了以下调用(假设分支名为 mybranch,远程名为 origin),则会出现上述情况:
git push origin mybranch
(failed)
git pull
(failed)
有时,您也可以通过在拉取中指定遥控器来暂时解决这个问题:
git pull origin mybranch
我不记得是否有办法在 vscode(gui 部分)中做到这一点。我发现 vs code 中的 git 功能有点缺乏我自己,所以如果我必须这样做,我会使用 vscode 中内置的终端并自己做。
评论
git pull
git fetch
git merge origin/main
origin
)