BitBucket - 错误:无法推送一些参考文献

问题描述 投票:0回答:11

我有一些项目想上传到我的 bitbucket 私人个人资料中。我执行了以下步骤,但出现错误。

  1. 将我的项目转换为 git:

    git init

  2. 下一篇:

git add
git commit -m "some message"
  1. 我创建了一个bitbucket存储库,版本控制系统是GIT。

  2. 然后我输入此内容(当然使用真实帐户名、仓库名称和仓库所有者):

git remote add origin https://<repo_owner>@bitbucket.org/<accountname>/<reponame>.git
  1. 最后,
git push -u origin master

我做了所有这些,但我的终端给了我这个错误:

To https://bitbucket.org/milosdev_me/lfs.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://[email protected]/milosdev_me/lfs.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.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
laravel git bitbucket
11个回答
45
投票

尝试:

git push origin master --force

这对我有用。


7
投票

您的

master
分支有一些您
locally
没有的代码,为了防止发生冲突,它不允许您在本地进行进一步的更改之前推送它们。要解决此问题,请将所有更改拉到您的
local repository
(您的项目):

git pull origin master --allow-unrelated-histories

之后,您将拥有

master
分支上可用的所有代码。

注意:请小心,从远程分支拉取代码可能会弄乱本地的所有更改。确保将这些更改保存在某个地方,或者在本地创建另一个分支,您将在其中拉取您的 origin

master
分支,这样它就不会弄乱您的更改。


3
投票

添加 --force 选项是一个坏主意
要么对其进行变基,要么提取代码,合并并推送它。

git pull --rebase origin master
git push -u origin master

2
投票

你的问题是你的本地存储库和 git 存储库之间有不同的东西(可能是你自动创建的自述文件),所以你有两个选择:

  1. 使用

    git pull origin master
    ,使用这个命令,你将从你的git仓库中拉取,但它会导致合并冲突,你必须使用IDE(推荐初学者)或通过cmd来解决。

  2. 使用

    git push origin master --force
    ,这样,您将强制从本地存储库推送到git存储库,通过覆盖数据来忽略任何合并冲突。我不确定,但我认为它会用你的本地存储库数据覆盖所有 git 存储库数据(这就是你想要的)。


1
投票

您的远程存储库和本地存储库有差异,远程存储库中有一些新内容。因此,为了推送,您需要提前从远程拉取更改。尝试做:

git pull
git push -u origin master

1
投票

问题是因为您的远程存储库和本地存储库存在差异。我遇到了同样的问题,我尝试了上述所有解决方案,但没有任何效果。 对我来说,场景是:- 我已经在远程存储库中有我的分支。如果您有相同的场景,请按照以下步骤操作:-

  1. 运行命令“git pull”

  2. 从本地存储库删除分支

  3. 使用“签出作为新的本地分支”来签出该特定分支 远程存储库。

  4. 运行命令'git分支-u'

  5. 运行命令“git push 或 git push --force”

或者您可以先直接从步骤 4 开始尝试,如果不起作用,请按照整个步骤进行操作。希望它会对某人有所帮助。


1
投票

如果您的 bitbucket 帐户已链接到 jira。

(只有当您将 jira 帐户链接到 bitbucket 时,这个答案才适合您)

我在尝试使用原点推送当前分支时遇到了同样的问题。

例如: 我的分行名称是:

feature/PREFIX-000-new-name-branch.

上一次提交:

git commit -m "Write your commit here"

到目前为止还没有工作。

您必须在提交中提及票证名称。 如果您已提交,请进行 --amend 重命名您的提交并重试。

git commit  --amend -m "PREFIX-000 Write your commit here"

再次尝试推送。


1
投票

如果您使用 BitBucket,当我尝试推送到分支但该分支已通过存储库设置禁用写入时,会出现此问题。


0
投票

检查本地分支的名称,因为默认情况下 git 可能将其命名为“main”。

Bitbucket 使用“master”,因此将本地存储库分支从“main”重命名为“master”。

然后运行:

git push -u origin master

-2
投票

如果你已经在本地创建了一个项目,并且想上传到git, 然后你需要做:

  1. git status
    查看您需要上传的更改
  2. git add .
    将这些更改添加到您的存储库中
  3. git commit -m ""
    添加提交消息
  4. git push origin master

这样我就解决了同样的问题 正在吃。


-2
投票

可能是配置问题

我用我的电子邮件更新全局 user.email 值后解决了这个问题

git config --global user.email [email protected]

注意:您需要删除之前的提交,因为该提交中的电子邮件地址错误

© www.soinside.com 2019 - 2024. All rights reserved.