我刚刚安装了netbeans并通过ssh连接到我的git存储库。
除了推动主分支外,一切正常。每次我在master分支上进行一些更改并尝试推送分支时,我都会弹出这个:
There were errors during the push.
Open output to see more details.
,细节是
==[IDE]== Jun 30, 2012 4:29:42 PM Pushing finished.
==[IDE]== Jun 30, 2012 4:32:38 PM Pushing
git push ssh://50.57.180.187:22/var/www/netbeans +refs/heads/master:refs/heads/master
Remote Repository Updates
Branch : master
Old Id : cc6de40b3236047b0212e318f9977a7b75395177
New Id : fe8f3af403524ba5731fdf1e0b8773c4ef223840
Result : REJECTED_OTHER_REASON
Local Repository Updates
Branch : origin/master
Old Id : cc6de40b3236047b0212e318f9977a7b75395177
New Id : fe8f3af403524ba5731fdf1e0b8773c4ef223840
Result : NOT_ATTEMPTED
==[IDE]== Jun 30, 2012 4:32:43 PM Pushing finished.
但是对于其他分支机构来说一切都很好。 我做错了吗?
编辑:远程回购不是裸露的,更多信息here
答案 0 :(得分:2)
您必须尝试推送新提交以替换已推送的现有提交(“历史记录已重写”)
您需要执行git push --force
,或在git push wizard dialog of NetBeans中选择类似的选项(如果支持)。
并且假设在远程仓库(which isn't always the case)上授权“push --force
”
如果其他人已从远程仓库撤出,重写其历史通常不是一个好主意。
答案 1 :(得分:0)
看起来问题是您的git存储库不是裸露的。
要验证你可以尝试在命令行上通过git推送,它会给出更详细的解释。
问题可能是master当前已在远程存储库中检出。为了能够推送master分支,你可以尝试在远程存储库上检查除master之外的东西。
答案 2 :(得分:0)
我遇到了同样的问题,通过netbeans推送(在Mac上),由另一种情况引起:
我(意外地)在本地创建时使用德语变音符号(ü,ä,ö)作为我的分支的名称。在本地工作正常,直到我试图将其推送到远程存储库。
我的解决方法:在本地创建另一个分支而不使用umlaut名称,将错误的命名分支合并到其中,将新分支推送到远程仓库。
希望这有助于有人在搜索解决方案时节省时间。