# 一.分支管理
# 1.为什么需要 git 分支?
使用 Git 分支有几个重要的原因,它们有助于更好地组织和管理软件开发过程:
并行开发: 分支允许团队在不互相干扰的情况下并行开发不同的功能或修复不同的 bug。每个分支都是一个独立的工作空间,团队成员可以在各自的分支上工作,而不会影响主代码库。
特性开发: 每个分支可以用于开发新功能。开发人员可以在一个特性分支上实现和测试新功能,而不会影响主分支。一旦新功能开发完成并测试通过,可以将其合并回主分支。
Bug 修复: 分支也可以用于修复 bug。当发现主分支上的 bug 时,可以创建一个新的分支用于修复,然后将修复合并回主分支。这有助于保持主分支的稳定性,同时允许在其他分支上继续工作。
版本控制: 分支可以用于管理不同的软件版本。例如,可以有一个用于开发的主分支、一个用于发布的稳定分支,以及其他用于不同版本的分支。这使得可以同时维护多个版本的软件。
实验性开发: 开发人员可以创建分支来进行实验性的开发,尝试新的想法或实现不同的方法,而不会对主代码库造成影响。如果实验成功,可以选择将更改合并回主分支。
总体而言,使用 Git 分支可以提高团队的工作效率,减少冲突,更好地组织和管理代码库的演进过程。分支使得开发者能够同时进行多个独立的工作,并且能够更灵活地应对不同的开发和维护需求。
管理分支可能会花你5分钟的时间,不管理分支可能会花你半天的时间,严谨的开发规范,自我驱动!!!!!
# 2.查看本地分支
#查看本地所有分支
git branch
2
# 3.查看所有分支
#查看所有分支(本地+远程)
git branch -a
2
# 4.查看远程所有分支
#查看远程所有分支
git branch -r
2
# 5.制删除本地库
#强制删除本地库develop
git branch -D develop
#删除本地库develop
git branch -d develop
2
3
4
5
# 6.新建分支并切换
#建立一个新的本地分支dev_3,并切换到 dev_3 分支
git checkout -b dev_3
2
# 7.将指定分支合并到当前
#将分支dev与当前分支进行合并
git merge origin/dev
2
# 8.切换到 dev 分支
#切换到本地dev分支
git checkout dev
2
# 9.依据 A 创建 B
#从主分支dev_3创建branch_3分支
git branch branch_3 dev_3
2
# 10.重命名
#将branch_3重命名为branch_5
git branch -m branch_3 branch_5
2
# 11.切换远程分支
#切换到branch_1.0/master分支
git checkout branch_1.0/master
2
# 12.切换到上一个分支
#切换到上一个分支
git checkout -
2
# 13.本地与远程关联
#建立追踪关系,在现有分支branch与指定的远程分支remote-branch之间
git branch --set-upstream [branch] [remote-branch]
2
# 二.tag 管理
# 1.为什么需要 git- tag?
git tag
是 Git 中用于标记特定提交的功能。标签通常用于标记软件版本,以便在将来的某个时间点能够轻松地找到和使用该特定版本的代码。以下是一些使用 Git 标签的原因:
版本标识: 标签可用于标识软件的特定版本。与分支不同,标签通常用于标记不可变的点,例如发布版本。当你在软件的某个特定版本上达到一个里程碑或发布一个稳定版本时,使用标签能够明确地标识这个状态,方便将来的查找和使用。
易于检出特定版本: 标签提供了一种简单的方式来检出代码库中的特定版本。通过使用标签,你可以轻松地切换到代码库的某个特定状态,而不必查找提交哈希值。
发布管理: 在软件开发中,发布时常常使用标签来标记发布的版本。这有助于确保在发布之后,能够轻松地找到和重现发布的代码状态。
长期支持(LTS): 对于长期支持版本的软件,通常使用标签来标记这些版本。这样,用户可以选择继续使用 LTS 版本而不升级到较新的开发版本。
易于协作: 在多人协作的项目中,使用标签可以帮助团队成员在共享的代码库中找到共同的参考点,以便更好地协同工作。
使用 git tag
命令,你可以创建轻量级标签或附注标签。轻量级标签只是一个指向特定提交的引用,而附注标签则包含更多的信息,例如标签的创建者、创建时间以及标签的注释。标签提供了一种方便的方法来组织和标识软件开发的不同版本。
# 2.列出所有 tag
#列出所有tag
git tag
2
# 3.新建 tag 指向 commit
#新建一个tag并且指定commit,tag名称最好和branch名称分开,可以加个-tag
git tag [tag] [commit]
git tag v2.0.2.9_2023-08-17 5ae44897;
2
3
# 4.提交所有 tag
#提交所有tag
git push --tags
2
# 5.新建分支指向 tag
#新建一个分支,指向某个tag
git checkout -b [branch] [tag]
git checkout -b v2.0.2.9 v2.0.2.9_2023-08-17
2
3
# 6.删除本地 tag
#删除本地tag
git tag -d [tag]
git tag -d v2.0.2.9_2023-08-17
2
3
# 7.删除远程 tag
#删除远程tag
git push origin :refs/tags/[tagName]
git push origin :refs/tags/v2.0.2.9_2023-08-17
2
3
4
# 8.新建 tag 在当前 commit
#新建一个tag在 当前 commit
git tag [tag]
2
# 9.查看 tag 信息
#查看tag信息
git show [tag]
2
# 10.提交指定 tag
#提交指定tag
git push [remote] [tag]
2