git创建新分支,查看分支,删除分支,切换分支等问题

本文详细介绍如何使用Git进行分支管理,包括创建、切换、合并分支等操作,以及在开发过程中如何有效利用分支确保代码稳定性。

一、使用背景

众所周知,在日常开发中,我们需要把测试服务器和正式服务器分开。相应的,为了保持正式版本能正常运行,我们需要新建一个git分支用来专门的存放正式版APP的源码。

这样,每当我们生成一个版本的时候,我们都可以把稳定版本的源码放到online这个分支上。然后在master分支上继续开发新功能。当需要升级版本的时候,我们只需要把master分支上成熟的代码推送到online分支即可。

二、创建分支及其相关命令

1、查看分支

git branch    查看本地仓库
git branch -r 查看远程仓库

2、创建新分支

//新建online分支
git checkout -b online

3、查看当前所有分支

//查看当前所有的分支
git branch -a
//结果显示带*号的,而且颜色是绿色的即为我们当前所在的分支
*master
online

4、切换分支

//从当前的master分支切换到online分支上面
git checkout online
//此时可以查看分支,使用git branch即可看到master和online分支
git branch

git checkout -    切换回上一个分支

5、删除分支

//删除online分支
git branch -d online

6、获取仓库代码

//origin是本地默认的一个名称,自己在新建本地仓库的时候是可以改名的
//平常使用的git pull都是默认从master分支上拉去代码。这里是从online分支上拉取代码
git pull origin master

7、修改代码提交到online分支上

git add .    添加文件
git commit -m 'add branch' 提交代码
git push -u origin online 推送至远程仓库master以外的分支

8、合并代码到master分支

假设分支online已经实现完成,想要将它合并到主干分支master中。首先切换到master分支

git checkout master

git merge --no-ff online

9、以图表形式查看分支

git log --graph
* commit b61bf267589802b664cb7055604869d0dbdbbfaa (HEAD                                                                               -> online, origin/master, master)
  Author: riemannChow <754798352@qq.com>
  Date:   Mon Feb 25 23:50:19 2019 +0800

      init

Administrator@JD-201512272155 MINGW64 /d/Dev/github/Seck                                                                              ill-master (online)

10、回溯历史版本

git reset --hard 指定版本

三、需要注意的问题

1、远程新建分支之后,本地如果立刻使用 git branch -a 查看分支的话,会看不到新建的分支。需要现在本地git pull一下。

2、如果我们已经通过git checkout master,切换到了master分支。那么我们在本地通过git pull和git push 都可以直接拉去或提交代码到master分支。git会默认使用你当前所在的分支

<think>好的,用户想知道如何在Git创建新分支。首先,我得回忆一下Git的基本命令。记得创建分支通常用`git branch`或者`git checkout -b`,后者还能直接切换新分支。 用户提供的参考引用里提到,可以基于tag创建分支,比如上线后需要紧急修复的情况。引用[1]说需要先确保本地仓库是最新的,这可能涉及到`git fetch`或者`git pull`来同步远程tag和分支信息。然后,基于tag创建分支的命令应该是`git checkout -b 新分支名 tag名`,对吗? 还有引用[2]提到`git checkout -b 分支名称`会基于当所在分支创建新分支。如果用户想基于某个特定的提交或者tag来创建,就需要先切换到那个tag对应的提交,再创建分支。或者直接在命令中指定tag,这样就不用先切换了。 需要注意的地方是,创建完本地分支后,还要推送到远程仓库,使用`git push origin 分支名称`。这样其他人才能看到这个新分支。用户可能也需要知道如何删除分支,或者如何查看所有分支,这些可能作为相关问题出现。 另外,用户的问题可能隐含了两种情况:基于当分支创建和基于某个tag或提交创建。需要分步骤说明这两种情况,确保结构清晰。还要检查命令的正确性,比如`git checkout -b`和`git switch -c`的区别,因为Git后来引入了`switch`和`restore`来替代部分`checkout`的功能,但用户可能更熟悉旧命令。 最后,生成的相关问题应该覆盖常见的使用场景,比如如何切换分支删除分支、推送分支等,帮助用户全面了解分支管理。</think>### 如何在Git创建新分支 #### 1. **基于当分支创建新分支** 若需要基于当所在分支(如`develop`分支创建新分支: ```bash # 创建切换新分支 git checkout -b 分支名称 # 示例:基于当分支创建 develop_2.0.0 git checkout -b develop_2.0.0 # 推送新分支到远程仓库 git push origin develop_2.0.0 ``` #### 2. **基于特定tag创建新分支** 若需要基于历史tag(如上线版本`v1.0.0`)创建分支用于修复问题: ```bash # 确保本地仓库包含远程tag信息 git fetch --tags # 基于tag创建切换新分支 git checkout -b 分支名称 tag名称 # 示例:基于tag v1.0.0创建 hotfix-v1.0.1 git checkout -b hotfix-v1.0.1 v1.0.0 # 推送分支到远程仓库 git push origin hotfix-v1.0.1 ``` #### 3. **验证分支状态** - 查看所有分支:`git branch -a` - 确认当分支:`git branch --show-current` --- ### 关键注意事项 1. **同步远程信息**:创建基于tag的分支,需先执行`git fetch --tags`确保本地仓库包含最新tag信息[^1]。 2. **推送远程分支**:新分支仅在本地存在,需通过`git push origin 分支名称`推送到远程仓库[^2]。 3. **分支命名规范**:建议使用语义化名称(如`feature/login`、`bugfix/header-error`)提高可读性。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老周聊架构

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值