通过git bash在本地创建分支,并推送到远程仓库中

文章目录

背景描述

需要基于main分支创建一个新分支:fix-scx-annex

命令如下:

  1. 确保本地 main 分支是最新的
    先更新本地 main 分支,保证新分支是基于最新代码创建的:
bash 复制代码
# 切换到 main 分支
git checkout main

# 拉取远程最新 main 分支
git pull origin main
  1. 基于 main 创建并切换到新分支 fix-scx-annex
bash 复制代码
# 方式1:创建并切换(最常用)
git checkout -b fix-scx-annex main

# 方式2:(Git 2.23+ 推荐用)
git switch -c fix-scx-annex main

执行完,你就已经在 fix-scx-annex 分支上了,代码完全和当前的 main 分支一致。

  1. 把新分支推送到 GitLab 远程仓库(因为新创建的分支,目前只存在于本地仓库中,需要推送到远程仓库中)
    刚创建完分支,在分支上还没有任何变动的情况下执行
    因为分支没有任何提交记录时,push会报错,我们做一个空提交作为初始化:
bash 复制代码
 # 创建空提交,备注写清楚是分支初始化
 git commit --allow-empty -m "init: 基于main分支初始化fix-scx-annex分支"
 # 首次推送,远程自动创建分支并绑定上下游
 git push -u origin fix-scx-annex
  • --allow-empty 允许无文件改动也生成提交记录
  • 备注清晰,远程仓库能看到这条初始化记录

    后续正常开发流程(之后改代码时)
bash 复制代码
git add .
git commit -m "这里写本次功能修改说明"
git push

(已经绑定过 -u,后续直接 git push 即可,不用带分支名

相关推荐
Hhy_11073 分钟前
《C++深度解构06》手撕 string —— 从底层内存管理到深浅拷贝彻底吃透
c语言·开发语言·c++·学习·visual studio
starzy19908 分钟前
深入理解Scala函数定义:从方法到函数的类型跨越
开发语言·scala
starzy199014 分钟前
深入理解Scala递归函数:从栈溢出到尾调用优化
开发语言·scala
三*一24 分钟前
Mapbox‑GL JS 多边形折点编辑工具:实现原理、功能拆解与踩坑总结
开发语言·javascript·ecmascript
YSL07012436 分钟前
C++基础
开发语言·c++
若亦_43 分钟前
Java中关于this的三种用法
java·开发语言·intellij-idea
2601_968793141 小时前
Python Requests 轻量自动化:无需浏览器,实现真人级账号浏览模拟
开发语言·python·自动化
eggwyw2 小时前
关于C++为什么不加入垃圾回收机制解析
开发语言·c++
来让爷抱一个13 小时前
Python 异步里混用同步库,事件循环被卡住的全过程
开发语言·python
心祭丫丫15 小时前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习