為何報錯:
git在拉取完代碼后準(zhǔn)備本地代碼推送到遠(yuǎn)程牲剃,執(zhí)行 git push失敗了
先上圖:
報錯分析:
其實發(fā)生過好幾次了,沒找到git push報錯原因清酥,或許跟平時的操作習(xí)慣有關(guān)扶镀。
1、本人兩部電腦開發(fā)焰轻,一部mac一部windows臭觉,代碼在兩臺電腦上都會進(jìn)行g(shù)it操作,
2辱志、代碼commit的時候經(jīng)常git commit -m 'xxx'和 git commit -am 'xxx'混用
3蝠筑、同事提交了我沒拉取更新(不大可能)
解決方法:
方法1、因為發(fā)生過好幾次揩懒,所以之前的解決辦法是git push origin --delete [遠(yuǎn)程分支名字]
將遠(yuǎn)程分支刪除什乙,再git push -u origin [遠(yuǎn)程分支名字]
將本地分支推送到剛刪除的遠(yuǎn)程同名分支上就解決問題了
方法二、今天按方法一的操作發(fā)現(xiàn)不生效了已球,怎么推送都失敗臣镣,后找到解決方法并嘗試推送成功了辅愿,步驟如下:
1、首先切換到master分支上
git checkout master
2退疫、更新master
git pull origin master
3渠缕、將推送報錯的分支(dev)合并到master
git merge dev
4、推送到master(要有推送到master的權(quán)限)
git push origin master
5褒繁、再切換到推送報錯的分支(dev)
git checkout dev
6、執(zhí)行推送
git push origin dev
最后推送成功馍忽,網(wǎng)上其他方法是git push --no-thin xxx
方法棒坏,我沒有成功