当我们谈论版本控制系统时,分支是一个关键的概念。在 Git 中,分支是用来处理不同代码线路的机制,允许你在项目的不同部分之间工作而不影响主要代码线。
分支是 Git 中用来处理项目中不同功能或特性的独立线路的工具。它允许你在不影响主要项目的同时进行开发、测试和实验。每个分支都是独立的,修改一个分支不会影响其他分支。
应用场景:
新功能开发: 创建一个新的分支,专注于新功能的开发,而不会影响主分支(通常是master)。
Bug 修复: 如果在主分支上发现了 bug,可以在一个新分支上进行修复,而不会中断正在进行的开发。
实验性开发: 为了尝试一些实验性的想法,可以创建一个分支,在上面进行实验,然后决定是否将其合并到主分支。
在Git中,分支有四个主要的环境,通常被称为四种基本的分支管理策略:
一、主分支(Master/Main)
二、开发分支(Develop):
三、特性分支(Feature):
四、发布分支(Release):
这些环境提供了一种有效的方式来组织团队的工作流,确保代码的稳定性和可维护性。使用这些环境,可以清晰地了解每个分支的目的和状态,从而更轻松地协作和集成代码。这种分支管理策略通常被称为Git Flow,是一种在软件开发中广泛应用的工作流程。
- # 查看本地分支
- git branch
-
- # 创建新分支
- git branch feature-branch
-
- # 切换到新分支
- git checkout feature-branch
-
- # 或者一步到位(创建+切换)
- git checkout -b feature-branch
-
- # 合并分支到主分支
- git checkout master
- git merge feature-branch
-
- # 删除已合并的分支
- git branch -d
-
- # 删除远程分支
- git push origin --delete dev
-
- # 提交分支 如果远程没有这个分支他会自动创建这个分支
- git push origin feature-branch
主分支(Master/Main): 主分支是项目的默认分支,通常包含了最新的稳定版本。在许多项目中,主分支的名称是 master 或 main。
1、创建并切换分支:你可以创建一个新的分支,这个分支是从当前工作目录的状态创建的,包含了当前工作目录中的所有文件和文件夹。
2、在分支上工作: 在特定的分支上工作时,你可以进行修改、添加新文件等操作。这些操作不会影响其他分支,因为每个分支都有独立的工作目录。
3、提交分支
就可在gitee远程仓库中查看了
在此分支开发的代码与其他互不相干了,若开发完成可与主分支进行合并
标签是一个指向特定提交的引用,通常用于标记版本发布。标签可以使你在不同版本之间轻松切换,而不必记住各个提交的哈希值。
应用场景:
注意事项:
避免使用特殊字符,空格或弱引用字符,以免引起不必要的问题。
标签名称对大小写敏感,因此 v1.0 和 V1.0 是两个不同的标签。
在使用标签时要保持一致性,遵循项目内的约定。
总体而言,标签的命名规则是由项目的团队来定义的。选择一种清晰、有意义、易于理解的命名约定对于项目的长期维护和协作是非常有帮助的。
- # 列出所有标签
- git tag
-
- # 添加标签
- git tag v1.0.0
-
- # 附注标签: 包含标签的名称、邮箱、日期和标签消息。它是一个更详细的标签类型。
- git tag -a v1.0.0 -m "Version 1.0.0"
-
- # 删除标签
- git tag -d v1.0.0
-
- # 删除远程标签(已推送的标签)
- git push origin --delete v1.0.0
-
- # 推送标签
- git push origin v1.0.0
-
- # 如果你有多个标签,可以使用 --tags 选项一次性推送所有标签。
- git push origin --tags
推送标签后,其他团队成员可以通过拉取最新的标签来获取项目中的特定版本。例如:
git pull origin v1.0.0.20231112_dev
这将获取远程仓库中的 v1.0 标签,并将你的本地仓库切换到这个版本。