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

【Git 中的 branch 工作流】关于git 中 branch 的一些基本操作

本教程介绍关于git branch 的一些工作流,包括一些branch操作以及多主机对同一主仓库进行协作时的一些操作流

设想一个场景

我现在的本地仓库和远程仓库不一致,但是我又想保留这个本地仓库,同时我又想另外创建一个副本,用于在远程仓库的基础上修改,我该如何做呢?

工作流

更新远程仓库的状态

我们的本地仓库对远程仓库的状态记录并不是实时的,而是每次运行git fetch时都会更新一次
所以我们需要先把最新的远程仓库的状态拉下来:

git fetch origin

查看分支状态

然后我们需要查看一下我们的本地分支与远程分支的差异,运行:

git log HEAD..origin/master --oneline

创建一个新分支(副本)

为了创建一个副本方便我们在远程仓库的基础上进行修改,我们先基于我们的这个本地仓库创建一个副本,然后再把我们原来的仓库用远程仓库的内容进行覆盖

git checkout -b my-feature

上面这行的-b参数为branch,创建了一个新的分支my-feature,并切换到了这个新分支

将原本的内容更新覆盖

git checkout master
git reset --hard origin/master

这样我们就切换回我们的本地master分支,然后用远程的master分支强制覆盖掉他了

合并分支(可选)

如果需要的话,我们可以进行分支的合并,如果我们目前在master分支,想要将my-feature分支的内容合并进来,可以运行:

git merge my-feature

查看分支

查看本地分支情况

git branch

可以查看本地仓库所拥有的所有分支

查看所有分支情况

git branch -a

可以查看本地以及远程仓库的所有分支情况

查看当前分支

上面两个分支情况中在分支前有*的就是当前分支,例如:
git-branch
在上面的图中可以看到我们这个本地仓库所处的分支为my-feature
在远程仓库中的分支情况也为我们列举出来了(红色)
或者运行:

git status

git-status
也可以查看当前处于哪个分支,这里就显示了On branch my-feature,告诉我们在my-feature分支上
命令行中一般也有显示。

http://www.xdnf.cn/news/15627.html

相关文章:

  • 【每日算法】专题十_字符串
  • 小架构step系列15:白盒集成测试
  • Translational Psychiatry | 通过流形学习和网络分析揭示精神分裂症与双相I型障碍的差异性精神病症状
  • 音视频学习(三十九):IDR帧和I帧
  • 《黑马笔记》 --- C++核心编程
  • PHP安全漏洞深度解析:文件包含与SSRF攻击的攻防实战
  • 在新闻资讯 APP 中添加不同新闻分类页面,通过 ViewPager2 实现滑动切换
  • 网络基础协议综合实验
  • GeoTools 工厂设计模式
  • 【Linux庖丁解牛】— 保存信号!
  • SAP学习笔记 - 开发45 - RAP开发 Managed App New Service Definition,Metadata Extension
  • C++中list各种基本接口的模拟实现
  • 25、企业能源管理(Energy):锚定双碳目标,从分类管控到智能优化的数字化转型之路
  • npu-smi info命令参数解释
  • C++-linux系统编程 8.进程(三)孤儿进程、僵尸进程与进程回收
  • 数据结构之单链表
  • Java :List,LinkedList,ArrayList
  • sqli-labs靶场通关笔记:第17关 POST请求的密码重置
  • 连接new服务器注意事项
  • kiro, 新款 AI 编辑器, 简单了解一下
  • Java基础(八):封装、继承、多态与关键字this、super详解
  • 笔试——Day8
  • Scrapy扩展深度解析:构建可定制化爬虫生态系统的核心技术
  • 直播数据统计:如何让数据为我们所用?
  • CommunityToolkit.Mvvm IOC 示例
  • C++回顾 Day8
  • 一文深入:AI 智能体系统架构设计
  • 简单工厂设计模式
  • QT 中各种坑
  • 算法学习day16----Python数据结构--模拟队列