git拒绝推送非快进
我是git的新手,在过去的两个月里,我一直在做一个小的辅助项目,并且一直在毫无问题地把东西推到bitbucket上。几天前,我压缩了我的项目文件夹(因为我必须重新安装Linux操作系统),现在在重新安装Linux操作系统后将其解压缩 所以,现在,我去了我的项目文件夹,继续快乐地工作,最后做了:git拒绝推送非快进,git,bitbucket,git-commit,Git,Bitbucket,Git Commit,我是git的新手,在过去的两个月里,我一直在做一个小的辅助项目,并且一直在毫无问题地把东西推到bitbucket上。几天前,我压缩了我的项目文件夹(因为我必须重新安装Linux操作系统),现在在重新安装Linux操作系统后将其解压缩 所以,现在,我去了我的项目文件夹,继续快乐地工作,最后做了: git add -A && git commit -m "modified code" && git push origin master …这是我通常做的 我得到: T
git add -A && git commit -m "modified code" && git push origin master
…这是我通常做的
我得到:
To https://johnsproject@bitbucket.org/johnsproject/proj.git
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'https://johnsproject@bitbucket.org/johnsproject/proj.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
我已经看了一些SO问题,它们建议使用武力标志-f
——但我不确定我是否应该这样做
p、 s:我在主分支机构,这是我回购协议中唯一的分支机构
如果有人能给我指出正确的方向,我将不胜感激
谢谢。中央存储库中有一些更改,您必须先提取这些更改,然后才能推送。 做 解决任何冲突。那就做吧 或者,如果您在本地没有任何有价值的修改,您可以创建回购协议的新克隆,并从那里开始工作:
git clone https://johnsproject@bitbucket.org/johnsproject/proj.git new_repo_dir
试着做
git pull origin master
git add -A
git commit -m "modified code"
git push origin master
您的本地存储库可能与远程存储库不同步。我也有同样的问题。我使用强制更新的
git push-f
命令进行了修复。对我有效git push--set-upstream-origin-master-f
在我的情况下,没有添加来自git存储库的新文件,这就是解决方案
1.git状态(仅用于检查)
2.git添加。
3.git push-u master origin在studio中提交git之后,以及git push origin分支名称之后,您可以尝试git pull。我遇到了完全相同的问题。在我尝试之前,没有任何帮助: git pull--重新设置原点主控形状 之后,运行push命令,即 git-push-u源主机
为我解决
合并远程更改(例如“git pull”)提示:再次按下之前。
您是否尝试过拉动?我尝试过此操作,但我得到了“*分支主控->获取头更新74f5f2e..06e5112错误:您对以下文件的本地更改将被合并覆盖:请,提交更改或在合并之前将其隐藏。`ok)然后提交更改并再次运行git pull
git pull当我执行git pull时,我似乎得到了`*分支主控->获取头更新74f5f2e..06e5112错误:您对以下文件的本地更改将被合并覆盖:请,在合并之前提交更改或将其隐藏。`@JohnJ好的,按照建议操作。首先提交您的本地修改。然后,git拉取
并解决任何冲突。尝试使用egit进行此操作有点像噩梦,但实际上Eclipse的git同步屏幕一直显示过时的合并冲突。我不得不停下来重新开始,突然我的问题解决了。FWIW。关于此解决方案,如果您有任何未在本地提取的新文件,此过程将删除这些文件。如果您不确定正在推送什么,则这不是一个好的解决方案。虽然这样做有效,但对于git新手来说,了解执行这些命令时发生的情况可能会很有用。您可以通过解释问题是什么(请参阅)、git pull
如何解决问题(请参阅)以及为什么选择添加额外的--rebase
标志来改进答案。
git clone https://johnsproject@bitbucket.org/johnsproject/proj.git new_repo_dir
git pull origin master
git add -A
git commit -m "modified code"
git push origin master