为什么我总是出错 "Push to origin/master was rejected"?

Why I always Got Error "Push to origin/master was rejected"?

编辑:如果您使用 git bash,应该注意的一件事是最好保持 AUTOCRLF FALSE

git config --global core.autocrlf false

============================================= ===========

我是 git 的新手,部署文件时遇到问题...

我刚刚使用命令成功地提取了文件 (?),现在我正在尝试推送...

以下提交日志:(由于 LF、CRLF 或未跟踪文件错误,我多次提交失败)

在 AS 中我得到了 "Push to origin/master was rejected"

推送时出错

hint: Updates were rejected because the tip of your current branch is behind
!   refs/heads/master:refs/heads/master [rejected] (non-fast-forward)
Done
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
18:53:20.176: [Lab1_movie] git -c core.quotepath=false -c 
log.showSignature=false pull --progress --no-stat -v --progress origin 
master
From https://github.com/kiranofans/Lab1_MovieApp
 * branch            master     -> FETCH_HEAD
 = [up to date]      master     -> origin/master
fatal: refusing to merge unrelated histories
18:57:26.215: [Lab1_movie] git -c core.quotepath=false -c 
log.showSignature=false push --progress --porcelain origin 
refs/heads/master:master
github --credentials get: github: command not found
github --credentials store: github: command not found
error: failed to push some refs to 
'https://github.com/kiranofans/Lab1_MovieApp.git'
To https://github.com/kiranofans/Lab1_MovieApp.git
!   refs/heads/master:refs/heads/master [rejected] (non-fast-forward)
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
Done
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

我不确定你在这里问的到底是什么。这些日志不是很有帮助。

但是既然你问的是推...

通常您是从克隆一个存储库开始的,或者您已经 运行 git init 并创建了一个。

然后您可以在该存储库中编辑或创建文件。

然后您需要暂存那些要提交的文件。

git add <file1> <file2> ...

您可以看到上演的内容 git status

如果一切正常,您可以提交这些更改

git commit -m "My commit message"

如果您已经克隆了一个远程存储库,并且您有权推送到它

git push <remote> <branch> 所以像 git push origin master

您可以使用以下方式查看您的遥控器 git remote -v

如果列表中没有您需要的遥控器,您可以添加遥控器 git remote add <give it a name> <the URL to the repo> 类似 git remote add upstream https://github.com/me/myrepo.git

然后推过去 git push upstream master

Git 对于 Windows: https://git-scm.com/download/win
参考手册:https://git-scm.com/doc
方法如下:https://githowto.com/

[更新]
那些日志更好。第 5 行告诉您需要做什么。 git pull
一定有人在您之前推动了更改。因此,您需要将这些更改拉入您的存储库。修复任何冲突、提交和推送。

如果您阅读错误消息,它会显示:

hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.

注意第二行。

尝试做一个 git pull,然后再尝试 git push。它应该有效。

您将尝试发送命令

git push -f origin master

我第一次尝试与我的用户一起推送到现有存储库时遇到了同样的错误。

我的问题是我的用户对存储库具有一般 WRITE 权限,但对分支没有。所以如果你也是第一次推送,请检查你的权限。

这通常发生在我将我的存储库推送到 GitHub 然后使用 GitHub 页面发布我的作品时,稍后我在本地机器上进行一些调整并尝试推送这些内容时更改它被拒绝,错误消息是远程回购包含我本地回购中不存在的文件所以我应该尝试先做一个 git 拉,基本上是因为在发布到 GitHub 页面后一些 _config.yml 文件被添加到我们的存储库中,但我们的本地计算机中不存在这些文件。

这可以先使用 git pull <remote fetch url> 来解决,它将 _config.yml 文件下载到我们的本地机器上,然后我们可以使用 git 推送命令进行推送。

我在这里回答这个问题是因为这个问题是第一个 google 搜索结果,当时我试图搜索为什么我的 git push 命令不起作用,尽管 push 中的问题是由于在这种情况下有不同的原因,其他人可能会遇到我的问题,所以我在这里添加了这个答案。