主人-> 主人(先取)

有没有一种好的方法来解释如何在 Git 中解析“ ! [rejected] master -> master (fetch first)'”?

当我使用这个命令 $ git push origin master时,它会显示一条错误消息。

! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'git@github.com:zapnaa/abcappp.git'
453041 次浏览

答案就在那里,笨蛋让你先去捡。

也许已经有人推动掌握了,而你的承诺落后了。因此,您必须获取、合并变更集,然后才能再次推送。

如果不这样做(或者更糟糕,如果使用 --force选项强制执行) ,可能会搞乱提交历史记录。

编辑: 我进入更多关于最后一点的细节,因为这里的一个家伙刚刚给出了使用 --force选项的非常糟糕的建议。

由于 git 是一个 DVCS,理想情况下,许多其他开发人员使用相同的存储库(或分支)从事与您相同的项目。如果您用您的变更集强制覆盖,您的存储库将与其他人的存储库不匹配,因为“您重写了历史”。您将使其他人不高兴,存储库将受到影响。也许世界上的小猫也会哭。

DR

  1. 如果您想要解决,那么首先获取(然后合并)。
  2. 如果你想黑客,使用 --force选项。

不过你要的是前者。总是去做,即使你总是自己使用 git,因为这是一个很好的实践。

试试这个 git 命令

git push origin master --force

或缺少力 -f

git push origin master -f

您应该使用 git pull,即 s 命令执行 git fetch,然后执行 git merge

如果使用 git push origin master --force命令,将来可能会出现问题。

Pull 总是正确的方法,但是当您试图将非 Git 文件系统转换为 Github 存储库时可能会有一个例外。在那里,您必须强制执行第一个提交。

git init
git add README.md
git add .
git commit -m "first commit"
git remote add origin https://github.com/userName/repoName.git
git push --force origin master

尝试:

git fetch origin master
git merge origin master

写完这段代码后,我收到了其他错误: (非快进)

我写下这段代码:

git fetch origin master:tmp
git rebase tmp
git push origin HEAD:master
git branch -D tmp

解决了我的问题

很可能有其他人(比如你的同事)已经提交了不在本地 master分支中的 origin/master提交,而你正试图将一些提交从本地分支推送到服务器。在99% 的情况下,假设你不想从 origin中删除他们的作品,你有两个选择:

2)将它们的更改合并到您的本地分支中,然后推送合并后的结果。 Git 收银大师 Git pull # 解决这里的冲突 Git push

(请注意,在本例中,git pull基本上只是 git fetchgit merge。)

1)重新设置本地分支的基础,让它看起来像是你的同事先提交,然后你再提交。这保持了提交历史的良好和线性-并避免了“合并提交”。然而,如果你和你的同事的改变有冲突,在最坏的情况下,你可能不得不为你的每一次承诺解决这些冲突(而不是仅仅一次)。从本质上说,这对其他人更好,但对你更多的努力。 Git pull —— rebase # 在这里解决冲突 推车

(请注意,git pull --rebase本质上是 git fetchgit rebase origin/master。)

有时,当您复制文件时,通常会发生 README 排序。

您可以使用以下命令: 首先复制一份新的回购文件,使用—— Mirror 标志:

$ git clone --mirror git://example.com/some-big-repo.git

然后,按照相应的代码进行操作:

使用命令行将现有项目添加到 GitHub

即使这不起作用,您也可以简单地编写代码:

$ git push origin master --force

或者

$ git push origin master -f

您的错误可能是因为合并分支。
跟着这个走:

步骤1: git pull origin master(如果您收到任何消息,那么忽略它)
第二步: git add .
第三步: git commit -m 'your commit message'
第四步: git push origin master

这对我很有效:

$ git add .
$ git commit -m "commit"
$ git push origin master --force

正如错误消息中所说的那样,您必须“首先获取”。这对我来说很有效。 使用以下命令:

  1. git fetch origin master

然后按照以下步骤进行合并:

  1. git pull origin master
  2. git add .
  3. git commit -m 'your commit message'
  4. git push origin master

按照下面给出的步骤,因为我也有同样的问题:

$ git pull origin master --allow-unrelated-histories

(查看本地分支是否可以轻松地与远程分支合并)

$ git push -u origin master

(现在将本地 git 存储库的全部内容推送到在线存储库)

我通过检查一个新的分行来克服这个问题:

# git checkout -b newbranch <SHA of master>


# git branch
* newbranch
master


# git push -u <repo_url_alias> newbranch

您只剩下两个分支: Master 和 newBranch,以后可以设法合并它们。

你只需要提到你的分支机构和你的远程名称。

git fetch origin
git merge origin/master

在我的例子中发生这种情况的原因是在创建 GitHub 代表链接时,我用 自述文件初始化了它

在创建 Git remote 时,不要用 README 文件初始化它,否则它会显示 err

不要这样做 & 它一定会工作的罚款 相反,如果您希望在推送到主分支之后使用自述文件对其进行初始化

这对我有用,因为没有其他的解决方案对我有用。 连武力都没有!

Https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/resolving-a-merge-conflict-using-the-command-line

只是经历了 Git Bash

cd REPOSITORY-NAME
git add .
git commit -m "Resolved merge conflict by incorporating both suggestions."

然后回到我的 cmd,我可以: git push heroku master,这在我的情况下是问题。

最快的解决办法

  1. 做一个 git 日志-> 您将看到有人可能在您提取最新代码库的时候发布了一些代码。
  2. 做一个 git pull —— rebase,这将是第一步,回放你的工作,然后将你提交的更改应用到相同的地方。
  3. 你现在已经准备好了。

我在按 推车命令时遇到了这个错误。

  • 这个问题通过简单地在 推车后面加上 -力量就解决了
  • 解决方案: < em > git push-source

enter image description here

当我们尝试使用下面提到的命令在 Github 上推送文件夹时

  $ git push origin master

得到这样的错误:

To https://github.com/Raushan1156/QR-Code.git
! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://github.com/Raushan1156/QR-Code.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.

试试这个命令来解决你的问题,它解决了我的错误。

$ git push origin master --force

一张图片已附上视觉解释。 enter image description here

这种情况发生在你的队友已经承诺。所以他的承诺是在上面。 为了避免这种情况发生,请重新建立基础(合并,取回)。

我用以下方法解决了我的问题。

  1. git pull --rebase origin master
  2. git push -u origin master

可以看到日志 git log

主人-> 主人(先取)

在此错误中显示时间,如果您首先检查您的文件夹位置的正确路径。并键入:-

Git 推动原点主控器——力

当您在 GitHub 中创建一个存储库并选择 README.gitignorelicense文件时,就会发生这种情况。 如果存储库为空,则删除它并重新创建它,而不选择 README.gitignorelicense文件。

这很容易修复,运行以下命令:

git fetch origin master

! [拒绝] main-> main (获取第一) 错误: 未能按下某些参考文献“ https://github.com/wasif-m/micard-flutter.git” 提示: 由于远程包含您所做的工作,更新被拒绝 提示: 没有本地。这通常是由另一个存储库推送引起的 提示: 到同一个引用。您可能需要首先集成远程更改 提示: (例如,‘ git pull...’)然后再推。 提示: 有关详细信息,请参阅“ git push —— help”中的“关于快进的说明”。

之后使用以下命令:

Git 推力 f 原点总线

我希望错误能够被移除,你的仓库能够提交到 gitHub