平时做技术实践时,很多问题不是概念不会,而是细节没串起来。拿“Git上有更新而本地无更新时的解决过程”来说,它看着像小点,放到项目里常会牵出环境、配置、兼容性和维护成本。下面按实际采用顺序,把思路、关键写法和容易踩坑的地方讲清楚,便于大家直接对照操作。
main 分支,但你当前在 master 分支上# 1. 先拉取远程更改
git pull origin master
# 2. 如果有冲突,解决冲突后提交
# (如果没有冲突,会自动合并)
# 3. 推送到远程
git push origin master
# 1. 查看所有分支
git branch -a
# 2. 如果远程有main分支,切换到main
git checkout main
# 3. 拉取最新代码
git pull origin main
# 4. 推送
git push origin main
# 1. 重命名本地分支
git branch -m master main
# 2. 拉取远程main分支的内容(如果存在)
git pull origin main --allow-unrelated-histories
# 3. 推送并设置上游
git push -u origin main
基于你的情况,建议先执行:
# 查看远程分支情况
git remote show origin
# 拉取并合并远程master分支
git pull origin master
# 推送
git push origin master
如果拉取时出现冲突,需:
git add .git commit -m "解决冲突"git push origin master远程仓库有本地没有的更新,需先拉取再推送。按以下步骤解决:
git pull origin master
落到代码里,如果看到类似 “Merge made by the ‘recursive’ strategy” 的消息,说明自动合同时成功,直接推送:
git push origin master
若出现 “CONFLICT” 提示,需:
git status
从实现思路看,打开冲突文件,手动解决冲突(冲突部分会有 <<<<<<<, =======, >>>>>>> 标记)
解决后添加文件:
git add .
git commit -m "合并远程更新"
git push origin master
警告:这会覆盖远程仓库的内容,只在确定远程内容能够丢弃时采用:
git push -f origin master
如果想先查看远程有什么更新:
# 获取远程更新但不合并
git fetch origin master
# 查看差异
git log HEAD..origin/master --oneline
# 如果确认要合并
git merge origin/master
# 推送
git push origin master
建议:
先执行 git pull origin master,这是最标准的解决方案
以上为个人经验,希望能给大家一个参考,也希望大家多多兼容脚本之家。
tplink5620千兆版有没有itv功能(tplink5620千兆版有itv功能吗)
tplink5620易展版和标准版区别详解(tplink5620易展版和标准版区别是什么)
tplink5620怎么设置无线桥接(tplink5620无线桥接设置方法)
单机离线部署OceanBase3.1.5完整指南
检查前端元素的小技巧整理(适合新手)实用指南
Android使用ViewPager2实现方式简单的轮播图的代码示例实用指南