Github工作流:在使用相同文件的多个分支中工作

Github工作流:在使用相同文件的多个分支中工作,git,version-control,github,branch,branching-and-merging,Git,Version Control,Github,Branch,Branching And Merging,我是Git新手,我正在尝试找出处理使用相同文件的多个分支时最好的工作流是什么。办公室的工作流程基本上是为收到的每张票据创建一个新的分支。我最担心的是,当这些分支合并到stage和production时,所有的更改都会实现 示例 假设我从生产中创建branchA。 然后我修改app.js并向QA分支发出请求 现在,我从产品中创建了一个名为branchB的新分支。 然后我修改app.js并向QA分支发出请求 branchB没有在branchA中所做的更改 我觉得如果我继续这个工作流程,我将始终处于冲

我是Git新手,我正在尝试找出处理使用相同文件的多个分支时最好的工作流是什么。办公室的工作流程基本上是为收到的每张票据创建一个新的分支。我最担心的是,当这些分支合并到stage和production时,所有的更改都会实现

示例

假设我从生产中创建branchA。 然后我修改app.js并向QA分支发出请求

现在,我从产品中创建了一个名为branchB的新分支。 然后我修改app.js并向QA分支发出请求

branchB没有在branchA中所做的更改

我觉得如果我继续这个工作流程,我将始终处于冲突状态

在不同的分支上工作的最佳方法是什么,即修改许多相同的文件,并确保当它们合并到QA中时,它们包含最新的代码


谢谢您的帮助。

为什么每张票都有单独的分支机构?-通常,它会让您选择合并一个分支的解决方案,但拒绝另一个分支的解决方案。您对两者都执行拉取请求,维护人员可以决定是否合并它们

如果是这种情况,您的分支必须是独立的。如果一个分支插入了解决方案A,而另一个分支插入了冲突的解决方案B,那么维护人员要么只选择其中一个,要么手动组合两个解决方案


如果您几乎是唯一一个处理这些票据的人,并且所有解决方案通常都被接受,那么您可以将第二个解决方案建立在第一个解决方案之上。(这基本上就是,
git-rebase
在做什么。)

缺点是:如果你这样做的话,没有第一个解决方案,你就不能再得到第二个解决方案

=>最佳解决方案取决于您的具体情况



有时,您可以通过构建代码以明确区分不同的功能来避免冲突。-但只要两个解决方案以不同的方式更改相同的功能。必须有人来决定,如何解决冲突。

你是绝对正确的,这正是将要发生的事情。这就是分支的优点,同时也是缺点。你必须在某个时候把所有的东西都合并进去。git的好处在于,它在合并更改时做得非常好。