目录
前言
一、📍环境背景
二、💻 完整流程
三、📝 顺序总览
四、🔹关系图例
五、❗暂存警告
六、☑️ 默认分支
七、🟣更多操作
前言
在团队开发或多人协作的项目中,Git 是最常用的版本管理工具。一个常见场景是:你已经在本地克隆了项目,但需要在远程已有的其他分支(例如 v1
)上进行开发。为了保证开发效率和版本安全,你需要清楚地知道:
如何在本地切换到远程分支进行开发
如何确保本地分支和远程分支正确关联
如何提交、推送以及同步远程最新代码
本文整理了从 克隆后的本地环境 → 拉取远程分支 → 设置跟踪 → 开发提交 → 推送同步 的完整流程,并附上命令说明及动态箭头流程图,帮助你快速掌握在本地开发新分支的标准操作方法。
一、📍环境背景
你已经在本地用 git clone
把项目克隆下来了,比如:
PS G:\0. Njust_code\work_codes\xz_service>
而远程仓库默认别名是 origin
(Git 克隆时自动生成),对应的地址可能是 GitHub/Gitee 等。
且远程有多个分支,比如:
origin/master
origin/v1
你需要在本地新建并切换到 v1
分支进行开发,并确保推送代码时是推到远程 origin/v1
。
二、💻 完整流程
从拉取到开发到推送的完整流程
2.1 查看远程分支
查看本地分支
git branch
查看远程仓库分支
git branch -r
作用:列出远程所有分支,确认目标分支(比如 origin/v1)是否存在。
2.2 获取最新远程分支信息
git fetch origin
# 作用:同步远程分支信息到本地(不会修改你的代码)。
2.3 基于远程 v1 创建本地分支并切换过去
git checkout -b v1 origin/v1
# 作用:在本地新建一个 v1 分支,并基于远程 origin/v1 初始化代码。
2.4 如果本地 v1 没自动关联远程,手动设置关联
git branch --set-upstream-to=origin/v1 v1
# 作用:让本地 v1 跟踪远程 origin/v1,这样 git pull/push 会默认同步到该分支。
2.5 确认分支跟踪关系
git branch -vv
# 作用:查看当前分支跟踪的远程分支,确保 v1 -> origin/v1。
2.6 开发并提交代码
git add .
# 作用:将修改加入暂存区。
2.7 提交备注
git commit -m "你的提交说明"
# 作用:生成一次提交记录。
2.8 推送到远程 v1
git push
# 作用:把本地 v1 的提交推送到远程 origin/v1(已关联的话可省略分支名)。
2.9 从远程拉取最新代码
git pull
# 作用:将远程 origin/v1 的最新更新合并到本地 v1。
三、📝 顺序总览
顺序总览(记住这个流程)
git branch -r
→ 看远程分支
git fetch origin
→ 更新分支信息
git checkout -b v1 origin/v1
→ 创建并切到 v1
git branch --set-upstream-to=origin/v1 v1
→ 设置跟踪关系
git branch -vv
→ 确认跟踪
git add .
→本地缓存
git commit -m "说明"
→ 提交备注
git pull
→ 同步
git push
→ 推送
一般情况下,是先同步,然后推送,这里需要根据实际情况而定。
四、🔹关系图例
本地分支 ↔ 远程分支的示意关系图,结合你现在的环境(master
、v1
)说明你本地和远程是怎么对应的:
远程仓库 (origin)
┌─────────────────┐
│ │
│ master │
│ v1 │
│ │
└─────────────────┘
↑ ↑
| |
| | 本地分支跟踪关系
| |
┌────────────┐ ┌────────────┐
│ 本地 master │ │ 本地 v1 │
│ (当前没改动)│ │ (当前开发) │
└────────────┘ └────────────┘
说明:
本地分支和远程分支的关系
本地 master
→ 远程origin/master
(可通过git push/pull
同步)本地 v1
→ 远程origin/v1
(你通过git branch --set-upstream-to=origin/v1 v1
设置跟踪关系)
推送/拉取的逻辑
git push
→ 自动推送到对应的远程分支(只要已关联)git pull
→ 自动拉取对应远程分支最新代码
当前开发分支
* v1
表示你现在在本地v1
上开发所有提交默认和远程
origin/v1
同步
五、❗暂存警告
将所有文件添加到暂存区:
git add .
警告内容:
warning: in the working copy of 'package.json', LF will be replaced by CRLF the next time Git touches it
含义:Git 提示:你当前文件是 LF(可能从远程仓库来的),下次 Git 修改或检出这个文件时,会把 LF 转成 CRLF,因为你在 Windows 上。
LF(Line Feed):Unix/Linux/Mac 系统的换行符
CRLF(Carriage Return + Line Feed):Windows 系统的换行符
解决方式:
保持默认,不管这个警告。这个警告不会阻止你提交,只是提示 Git 可能会替换换行符。如果你的团队跨平台(Windows/Linux/Mac),建议统一换行符策略;如果只是 Windows 开发,可以直接忽略。
另外,在 git pull 拉取代码时,有时候可能会长时间拉取不下来,原因可能是之前添加的内容没有push,可以直接 push 进行提交(具体操作,需根据实际情况进行区分)。
六、☑️ 默认分支
项目远程仓库设置默认分支
在大部分 Git 托管平台上操作:
打开你的仓库页面。
找到 Settings / 仓库设置 → Branches / 分支管理。
在 Default branch / 默认分支 中选择
v1
,保存即可。
注意:改了默认分支后,新克隆的仓库会直接默认在
v1
上,而原来的master
仍然存在,只是不是默认分支了。
七、🟣更多操作
请看,Git / GitHub / GitLab / Gitee 个人专栏
GitHub / GitLab / Giteehttps://blog.csdn.net/weixin_65793170/category_12208677.html
另外,在克隆公开仓库时可直接使用 git clone
,无需认证;克隆私有仓库时,若用 HTTPS 协议,需用个人访问令牌(Token)代替密码。例如:
git clone https://zhijun_lee:你的令牌@gitee.com/njust_365/xz_service.git
私人令牌位置:头像 > 设置 > 私人令牌 > 修改/新建