最近的工作中,有一个场景,拉取工具类的代码后,需要修改很多参数,每一次生成数据,这个参数可能都不同,因此想在本地保留这个版本的代码,暂且成为B版本,而从master拉下来的代码呢,不想改变任何参数,且master的代码,远程仓库会经常更新,暂且成为版本A,于是就诞生了如下的需求。
一、需求
-
原始版本 A 保留在 master 分支上(本地)
-
修改后的版本 B 放在另一个本地分支上
-
不推送任何内容到远程仓库
-
本地可随时切换查看 A 和 B
二、解决方案
最佳做法:本地新建分支存放修改(版本 B)
1、克隆仓库并进入目录
2、确认当前在 master 分支(版本 A)
git status
# 确保是 master 分支,且工作区干净
-
创建并切换到新分支(用于存放版本 B)
git checkout -b my-changes -
在新分支上进行修改(版本 B)
# 修改代码... git add . git commit -m "本地修改版本B" -
现在你有两个本地版本:
-
master:原始版本 A(未修改) -
my-changes:修改后的版本 B
-
-
本地切换查看这两个版本:
git checkout master # 查看原始版本 A git checkout my-changes # 查看修改版本 B
⚠️ 注意事项
-
不要执行
git push origin my-changes,否则远程会看到你的分支; -
这两个分支都只存在于本地,不会影响远程仓库;
-
如果你以后想删除
my-changes分支,也可以随时删掉。