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

git学习 分支管理(branching)合并分支

git branch 查看本地所有分支

PS F:\LiveTalking> git branch
* main

git branch -a 查看所有分支 包括本地和远程分支

PS F:\LiveTalking> git branch -a
* main
remotes/origin/HEAD -> origin/main
remotes/origin/ernerf-rtmp
remotes/origin/main

远程分支:是本地仓库里的一个书签或指针 。这个指针的唯一作用是记录上一次你和远程仓库通信时,远程分支(比如origin/main)所处的位置 命名规则就是<remote-name>/<branch_name> 最常见的远程名字是origin 

例如:origin/main:指向远程仓库(origin)上 main 分支的“指针”。

唯一的更新方式是git fetch 和git pull

为什么会说唯一的更新方式是git fetch 和 git pull吗?这两个是获得远程分支的更新情况的 我看deepseek说了一个例子 git branch -a说的意思是根据我们最后一次和总部同步消息 总部有以下这些分支 此时并没有主动去咨询总部 在没有同步消息的这段时间内 是否有更新  而git fetch 就是去咨询总部 请求最新的情况 

git branch <branch name>在本地新建一个分支

PS F:\LiveTalking> git branch liujiangli-branch
PS F:\LiveTalking> git branch
liujiangli-branch
* main

团队协作的时候很重要 每个人都在Main分支上 是很危险的 注意在创建新的分支之前 确定main是最新的 这样的话你同事的对于main的修改 不会导致后期你的代码差异过大

git branch -d <branch-name> 删除一个本地分支 (安全删除 会检查是否已经合并)

PS F:\LiveTalking> git branch -d liujiangli-branch
Deleted branch liujiangli-branch (was b750ae9).
PS F:\LiveTalking> git branch
* main

(我在我的本地爱怎么修改就怎么修改 但是我会将我觉得好的修改必要的Git add 然后再git commit只有经过commit的部分 才会到远程仓库 不然的话就还是在我的本地)

上面那个删除指令 因为我这分支啥操作也没做 我们来试试做操作之后是啥情况

PS F:\LiveTalking> git checkout liujiangli-branch
A       1.py
M       app.py
M       baseasr.py
M       basereal.py
M       lipasr.py
M       lipreal.py
M       llm.py
A       llm1.py
A       ttsreal1.py
M       wav2lip/genavatar.py
M       wav2lip/models/wav2lip.py
M       webrtc.py
Already on 'liujiangli-branch'

我新建了一个liujiangli-branch分支 然后使用checkout切换到这个分支上 可以看到这个分支上存在的内容 这些是没有git add  和commit的 简单看看就行 

git branch -d <branch-name> 删除一个本地分支 (安全删除,会检查是否已合并)删除这个分支不能在此分支上 要切换到其他分支 而且切换的时候如果在这个新分支上进行的修改没commit 不会让你切换 这些自己都实验一下就行

git branch -D <branch-name> 强制删除一个本地分支 即使没有被合并(合并到目标分支)

git checkout <branch-name> 切换到分支

git checkout -b <branch-name> 创建并切换到分支

git switch <branch-name> 切换到分支

git switch -c<branch-name>创建并切换到分支

git merge是针对于分支的合并

git merge <branch-name>指定分支合并到当前分支

写着写着不想写了 差不多了 之后工作的肯定才会应用更多 先这样 

喜欢这个帖子 欢迎点赞

http://www.dtcms.com/a/353942.html

相关文章:

  • 鸿蒙清楚本地缓存
  • AI大语言模型助力:国自然/省级基金项目撰写(如何高效准备申请材料?如何精准把握评审标准?从申请者和评审者的不同角度全解
  • 【单例模式】
  • CUDA的编译与调试
  • Mac 上录制视频有几种常见方式
  • 基于springboot的校园资料分享平台(源码+论文+PPT答辩)
  • 网络安全监控中心
  • 【笔记】Windows 安装 Triton 的工作记录(之二)
  • IDR的RWA金融逻辑RWA:全球金融革命的底层协议
  • 数学建模——马尔科夫链(Markov Chain Model)
  • 集成学习之 Stacking(堆叠集成)
  • django配置多个app使用同一个static静态文件目录
  • 使用openCV(C ++ / Python)的Alpha混合
  • 【高级机器学习】 2. Loss Functions(损失函数)
  • 一、快速掌握Python 中的文件操作知识体系
  • mysql zip包安装步骤
  • 2025(秋)中国国际健康产业(成都)博览会:探索健康未来辉煌
  • TCP 并发服务器构建
  • 场外期权能做套利吗?
  • 二叉树的工程实践与高频问题(续):从LeetCode真题到系统设计的深度剖析
  • centos7 安装指定版本的fastfds
  • 了解CDC(变更数据捕获)如何革新数据集成方式
  • Linux 系统调优工具与实践指南
  • 个人博客系统系统---测试报告
  • HarmonyOS布局实战:用声明式UI构建自适应电商卡片
  • 【源码分析】@vue/runtime-dom/src/apiCustomElement.ts 解析
  • 重磅升级,Pixso 2.0赋能HarmonyOS应用设计与开发
  • 安卓11 12系统修改定制化_____如何修改固件 实现给指定内置的应用无障碍权限
  • Sybase 安装与备份
  • 【c++】超好玩游戏