通过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 即可,不用带分支名

相关推荐
Shaoshing3 小时前
消息发送
java·开发语言
乌暮4 小时前
从 `println` 到生产级日志:Spring Boot 日志体系完全指南
java·开发语言·jvm·spring boot·后端·学习·面试
星夜离尘564 小时前
MATLAB 定点量化误差实验 半个 LSB 的界限为什么挡不住削顶失真
开发语言·matlab
Wang's Blog4 小时前
Java 项目实战: 交友项目 - 百度人脸识别:介绍
java·开发语言·交友
障碍的枫子4 小时前
我的第一个Agent
开发语言·python·langchain
Pniubi4 小时前
区分agent中长期记忆和偏好记忆
开发语言·ai·智能体
我就是不信5 小时前
Swift 方法派发机制详解
开发语言·ios·swift
CCCCCCCCharlie5 小时前
深入解析I/O底层:文件描述符与缓冲区真相
linux·开发语言·c++·算法
Zenova EdgeOS5 小时前
Rust TUI 实战:用 ratatui 构建工业边缘终端界面
开发语言·后端·rust·工业网关
学逆向的5 小时前
C 选择结构的执行效率分析
c语言·开发语言·算法·网络安全