当前位置: 首页 > news >正文

git处理分支

1.同步远程仓库分支信息

# 1. 同步远程分支信息 git fetch origin

同步完之后,可以在clion左下角的git查看远程的分支有哪些

命令行中查看远程分支

# 列出所有远程分支(清晰显示分支名) git branch -r # 或显示分支+最新提交信息(详细模式) git branch -r -v

2.拉取并切换到远程分支

# 2. 拉取并切换到远程分支(本地自动创建对应分支) git checkout -b 远程分支名 origin/远程分支名 #本地创建 feature/remote-branch 分支。 #将其与远程的 origin/feature/remote-branch 分支关联 #(后续提交可直接用 git push,无需指定远程)。

已经切换到result分支,而且本地的result分支已与远程仓库的origin/result分支建立了追踪关系

此时本地已经切换到了result分支,下次push就会推送到result分支上。

git checkout result #切换到result分支

3.处理当前分支落后主分支情况

0. 此时是在其他分支(非主分支) # 1. 同步本地主分支 git checkout main git pull origin main # 2. 合并到当前分支 git checkout 你的分支名 git merge main # 3. 解决冲突后提交(若有冲突) git add . git commit -m "合并主分支最新代码" # 4. 推送到远程 git push origin 你的分支名

3.1 如果此时本地的主分支已经是最新的状况

前提条件

确保本地main分支是最新的,可通过以下命令验证:

bash

git checkout main git status # 若显示 "Your branch is up to date with 'origin/main'",则说明本地主分支已最新

操作流程(本地主分支已最新时)

  1. 切换到你的非主分支(例如feature):

    bash

    git checkout feature
  2. 直接合并主分支:

    bash

    git merge main
  3. 若有冲突,解决后提交;若无冲突,合并会自动完成,直接执行第四步

若合并时有冲突,Git 会提示Automatic merge failed; fix conflicts and then commit the result.

  • 打开冲突文件,找到标记<<<<<<< HEAD(当前分支内容)和>>>>>>> main(主分支内容)的部分,手动修改保留正确代码。
  • 解决后标记为已解决,并提交:

    bash

    git add . # 标记冲突文件为已解决 git commit -m "合并主分支代码,解决冲突"

4.推送合并结果到远程非主分支(可选):

bash

git push origin feature #feature是分支名

此时表示已经推送到远程分支

3.2 当前有提交 远程无法覆盖本地情况

比如下边这种情况:

(base) PS D:\clion_project\CorematrixAGDI> git pull origin master From https://codeup.aliyun.com/68d76a76df33344f193efc38/CorematrixAGDI * branch master -> FETCH_HEAD error: Your local changes to the following files would be overwritten by merge: source/InfoTable.cpp source/TemplateDialog.cpp Please commit your changes or stash them before you merge. Aborting Updating 3b13646..b952f3c

解决办法:

针对单个文件

  • 1、把文件从暂存区移出(如果该文件没提交到缓存区可以不执行这一步):

    git restore --staged source/InfoTable.cpp source/TemplateDialog.cpp
  • 2、彻底放弃这两个文件的本地修改:

    git restore source/InfoTable.cpp source/TemplateDialog.cpp
  • 3、重新拉取:

    git pull origin master

针对所有文件:

如果你确定本地没有任何需要保留的未提交代码(包括其他文件),你可以直接把整个本地仓库强行重置到和上次提交一模一样的状态。

  1. 强制重置所有文件:

    git reset --hard HEAD
  2. 重新拉取:

    git pull origin master
http://www.jsqmd.com/news/475213/

相关文章:

  • 2026空气能供应厂家综合评测:如何选择可靠热泵品牌 - 2026年企业推荐榜
  • 终极指南:10款最佳开源macOS壁纸工具推荐与测评
  • MakeHuman角色动画入门:如何让你的3D模型动起来
  • 如何使用Cobra构建高效命令行CI/CD管道管理工具
  • 2026年如何挑选优质铝单板供应商?这份指南请收好 - 2026年企业推荐榜
  • 终极Ripple框架CORS问题解决方案:跨域请求与代理配置完全指南
  • 如何快速集成cal.com移动SDK到iOS/Android应用:完整指南
  • Gausian Native Editor导出全攻略:FFmpeg集成与格式优化技巧
  • 5款顶级macOS窗口管理工具推荐:提升效率的终极指南
  • Ripple框架的终极代码分割指南:基于路由与组件的高效优化策略
  • 终极窗口管理快捷键工具:提升macOS效率的完整指南
  • 终极指南:MediaPipe内存池管理如何提升实时媒体处理性能
  • 终极指南:如何使用IPED命令行工具自动生成脚本帮助文档
  • Ripple框架状态持久化终极指南:localStorage与响应式同步的完美结合
  • PyCaret与MLflow模型注册:低代码机器学习项目的终极模型版本管理指南
  • 如何快速开发对象存储API的Python客户端:从入门到实战指南
  • 解决HyFetch常见问题:颜色显示异常、配置丢失与Windows兼容性解决方案
  • 如何在5分钟内启动Aphrodite-engine?初学者必备的快速上手指南
  • 如何快速构建智能检索系统:LlamaIndex从零开始的完整指南
  • UserFinder使用技巧:提升用户名搜索效率的5个实用方法
  • 关于rfsoc data converter配置与被采样信号的关系
  • 驱动车辆四轮转向LQR控制、双移线对比工况(横摆角速度+质心侧偏角+零质心侧偏角)simulink仿真
  • Buildroot调试技巧:从BR2_ENABLE_DEBUG到gdb交叉调试全流程
  • Yi-9B训练技术解密:3T tokens如何打造顶尖语言模型
  • Llama-3.2V-11B-cot参数调优指南:如何平衡CAPTION准确性与REASONING深度
  • 从Vim到Neovim:vim-moonfly-colors主题跨平台使用指南
  • Agentic性能优化:减少AI工具调用延迟的终极指南
  • 如何使用Babel构建微前端架构:现代前端开发的终极编译指南
  • eBay采购技术全流程:从0到1搭建独立买家账号体系
  • 【车间调度】基于模拟退火算法考虑在料品和成品库存受资源约束和截止日期影响的无关并行机调度问题UPMSP附Matlab代码