git踩坑 push时报错 error: failed to push some refs to 'git@gitee.com:git_zn/jl.git'

本文讲述了在使用Git进行代码推送时遇到的冲突问题及解决方法,包括执行pull命令更新本地代码,以及在版本迭代和强制推送代码的情况下的处理策略。

很遗憾没留下错误相关的代码截图,大家凑合看吧
git push 时报错

 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'git@gitee.com:git_zn/jl.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.

搜了很多资料 了解到是因为远程仓库的代码跟本地的不一样导致的,需要先执行pull命令将远程仓库的对应分支代码拉取下来再push(git相关命令我这里不作介绍了,可以直接去百度Git命令大全)

git pull <仓库别名,默认origin> <分支名> --allow-unrelated-histories

据说此时会有一个弹窗(小声BB我没有),如果有的话提示你修改一个文档的内容,不用管他,按ESC键

再按SHIFT+; (SHIFT+;用来输入一个冒号) 再输入wq保存

:wq

然后就可以push推送了
但是无奈拉取下来之后,本地的代码版本被迭代了
版本回退后再push还是报错
所以这个方法对我并不起作用

最后我是直接强制推送的代码,然后成功了
命令是 git push -f

该错误可能由不同原因导致,根据已有引用,下面为不同情况对应的解决方法: ### 远程仓库有本地没有的更新 当远程仓库包含本地没有的工作,会出现 `! [rejected] master -> master (fetch first)` 这样的错误提示。此需要先整合远程更改,再进行推送。 ```bash # 拉取远程仓库的更新并尝试合并 git pull origin master # 再次尝试推送本地提交到远程仓库 git push origin master ``` ### 本地和远程仓库不同步 若在码云创建的仓库有 `ReadMe` 文件,而本地没有,会造成本地和远程的不同步,出现 `[rejected] master -> master (non-fast-forward)` 错误。有两种解决办法: - **在本地生成 `ReadMe` 文件**:可以手动创建一个 `ReadMe` 文件,或者使用命令生成。 ```bash # 创建一个空的 ReadMe 文件 touch ReadMe.md # 添加到暂存区 git add ReadMe.md # 提交更改 git commit -m "Add ReadMe file" # 再次尝试推送 git push origin master ``` - **强制合并**:使用 `git push -f` 强制推送,但此操作会覆盖远程仓库的内容,需谨慎使用。 ```bash git push -f origin master ``` ### 网络连接问题 若出现 `fatal: unable to access 'https://github.com/SifiaZiwan/ng-myWYY.git/': Failed to connect to github.com port 443 after 21106 ms: Timed out` 这类网络连接超错误,可尝试以下方法: - **检查网络连接**:确保网络正常,可尝试切换网络环境。 - **修改代理设置**:若使用了代理,检查代理配置是否正确,或者暂关闭代理。 ```bash # 查看当前代理设置 git config --global --get http.proxy git config --global --get https.proxy # 取消代理设置 git config --global --unset http.proxy git config --global --unset https.proxy ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值