Arhadthedev Asked:2020-06-07 22:34:20 +0000 UTC2020-06-07 22:34:20 +0000 UTC 2020-06-07 22:34:20 +0000 UTC 不同的工作流程有什么区别?[复制] 772 我听说存在大量的工作流(开发流程)—— git flow、github flow、gitlab flow。 它们的性质是什么,它们有何不同?毕竟,分支在所有三种情况下都会发生。 git 1 个回答 Voted Best Answer Arhadthedev 2020-06-07T22:34:20Z2020-06-07T22:34:20Z 是的,所有工作流都有很多共同点,因为它们被设计为使用相同的工具(在本例中为git,一种能够轻松分支的分布式版本控制系统)。 但是,它们在处理这些分支的方式上有非常显着的差异。 Git 流程 有两个固定分支,“稳定” master和“发展中” develop。当有必要更改代码时,会发生以下两种情况之一: 从develop中分离出一个主题分支,如果这是功能的引入或为新版本的发布做准备, 如果是错误修复,或者直接从master分支。 工作完成后,主题分支被合并到它的父分支中,在某些情况下,合并到master中。 GitHub 流程 与 Git Flow 相同,但只有一个固定分支 - master;其他一切都属于主题分支。反过来,主题分支是在分叉中创建的- 存储库的克隆副本。也就是说,主题分支的中央存储库不包含。包括合并后,由于分支的标签被删除并且它们的头部变成匿名的。 GitLab 流程 和 GitHub Flow 一样,只有一个固定的分支——master;其他一切都属于主题分支。但是,如果在那种情况下发布被放置在master-a commits中,那么这里会为每个发布创建一个单独的分支。此外,不会执行这些分支与父分支的合并。如果一个分支被剥离,那么它将过自己的生活,以单独提交的形式接收错误修复(可能是从 master 的头部移植的,考虑到分支之间累积的功能差异)。 插图摘自文章“잘밤에쓸데없는생각하기...”。看不懂韩文,不过图片很美。
是的,所有工作流都有很多共同点,因为它们被设计为使用相同的工具(在本例中为git,一种能够轻松分支的分布式版本控制系统)。
但是,它们在处理这些分支的方式上有非常显着的差异。
Git 流程
有两个固定分支,“稳定” master和“发展中” develop。当有必要更改代码时,会发生以下两种情况之一:
工作完成后,主题分支被合并到它的父分支中,在某些情况下,合并到master中。
GitHub 流程
与 Git Flow 相同,但只有一个固定分支 - master;其他一切都属于主题分支。反过来,主题分支是在分叉中创建的- 存储库的克隆副本。也就是说,主题分支的中央存储库不包含。包括合并后,由于分支的标签被删除并且它们的头部变成匿名的。
GitLab 流程
和 GitHub Flow 一样,只有一个固定的分支——master;其他一切都属于主题分支。但是,如果在那种情况下发布被放置在master-a commits中,那么这里会为每个发布创建一个单独的分支。此外,不会执行这些分支与父分支的合并。如果一个分支被剥离,那么它将过自己的生活,以单独提交的形式接收错误修复(可能是从 master 的头部移植的,考虑到分支之间累积的功能差异)。
插图摘自文章“잘밤에쓸데없는생각하기...”。看不懂韩文,不过图片很美。