git - 第一次 Git 推送被拒绝

标签 git github version-control push

当我键入 git push origin master 时,git 会显示以下错误消息:

To https://github.com/farrasdoko/RumahSakit.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/farrasdoko/RumahSakit.git'
hint: Updates were rejected because the tip of your current branch is behind
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.

然后,我输入 git fetch origingit merge origin mastergit pull origin master git 显示以下错误消息:

From https://github.com/farrasdoko/RumahSakit
 * branch            master     -> FETCH_HEAD
fatal: refusing to merge unrelated histories

怎么推??

最佳答案

hint: Updates were rejected because the tip of your current branch is behind

通常发生这种情况时,您真正想做的是将 origin/master 中的额外提交添加到您的分支之前您自己的提交。 你可以使用rebase命令来做到这一点:

git rebase origin/master

这会将新提交从 origin pull 入您的分支,然后在顶部添加您自己的新提交,以便您的提交是最新的。在 rebase 时你可能会遇到一些冲突。发生这种情况时,git 将停止并告诉您解决冲突;之后,您应该 git add 受影响的文件,然后 git rebase --continue。或者,如果您决定不知道如何处理该问题,您可以 git rebase --abort 并且您的分支将返回到 git 之前的相同状态rebase 命令已启动。

git rebase 是一个功能强大的命令,它可以很快把你的分支弄得一团糟,所以要小心,但不要害怕它。适用标准计算建议:如果您没有信心,请在做任何事情之前备份您的工作。幸运的是,创建一个新分支作为备份很容易 (git checkout -b my_backup_branch),然后切换回您的工作分支。

关于git - 第一次 Git 推送被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52013203/

相关文章:

git - 撤消 Git 中已推送到远程仓库的特定提交

web - Drupal:您使用 SVN 进行网站开发吗?

git - 通过 VS 团队服务从特定提交创建 pull 请求

git - 与其他服务器相比,Team Foundation Server 的分支特征

GitHub:如何让 `utteranc.es` 用于网站讨论

java - 如何将 mysql 驱动程序 jar 添加到项目作为 github 存储库的依赖项?

rest - 如何通过 REST API 从 Bamboo Atlassian 构建计划中检索我的自定义变量

git - 忽略已 checkin 目录的内容?

git clone --recurse-submodules 记录子模块的绝对路径

git - 将另一个提交导入我的仓库