Git合并来自多个分支的问题

Git合并来自多个分支的问题,git,merge,Git,Merge,我有一个项目,有多个子文件夹和多个工程师在工作。它的顶部文件夹只有一个git repo 所有的开发人员都在周一签出一个公共主节点,并从中创建各自的分支。他们编辑代码,主要是在单独的文件和文件夹中,但也有一些文件是通用的,由各方编辑 我的问题在于,我可能会将一个开发人员分支合并到master中,然后提交并推动它。如果该开发人员只处理文件1和文件2,那么在提交中只有文件1和文件2需要更新。太好了 第二个开发人员处理文件3和文件4,当文件3和文件4在开发人员1合并后合并时,我有时会看到奇怪的行为,这几

我有一个项目,有多个子文件夹和多个工程师在工作。它的顶部文件夹只有一个git repo

所有的开发人员都在周一签出一个公共主节点,并从中创建各自的分支。他们编辑代码,主要是在单独的文件和文件夹中,但也有一些文件是通用的,由各方编辑

我的问题在于,我可能会将一个开发人员分支合并到master中,然后提交并推动它。如果该开发人员只处理文件1和文件2,那么在提交中只有文件1和文件2需要更新。太好了

第二个开发人员处理文件3和文件4,当文件3和文件4在开发人员1合并后合并时,我有时会看到奇怪的行为,这几乎就像以前合并的更改是“未合并的”

在普通文件上,我有时会遇到冲突,并使用meld手动合并它们

我还不能完全指出确切的问题,但我希望社区能够指出正确的方向

我是否以错误的方式进行合并

是否有一种方法可以使用meld之类的合并工具来合并每个手动显示更改的文件?我知道这将花费更长的时间,但我不能继续用错误的合并浪费开发人员的时间

是否有一种方法可以合并每个手动显示更改的文件 像meld这样的合并工具

您可以使用git mergetool--tool=meld

第二个开发人员处理文件3和文件4,当文件3和文件4合并时 在Developer1合并之后,我有时会看到奇怪的行为,它 就好像以前合并的更改是“未合并的”

听起来好像你没有提取最新的代码。开发人员2需要引入开发人员1的更改以查看以前合并的更改

我还不能完全指出确切的问题,但我希望 社区可能指向正确的方向

我是否以错误的方式进行合并

我认为阅读一下(特别是集中式、功能分支和git工作流)会对您有所帮助。确定您的团队正在使用的模型


您需要提取获得最新提交的上游分支。然后,您可以在合并后解决冲突(或者实际上重新设置链接中找到的信息的基础)

您是说您的流程是每个人都创建一个个人分支在周一工作,并可能在周五合并,而不管他们在做什么或分支的状态?如果是这样的话,那将导致很多问题。有很多方法可以避免合并冲突。然而,它不能完全停止(在你的情况下不是)。我相信你的问题应该重新措辞,问我应该使用哪个git工作流来避免合并冲突。@Schwem:合并是基于完成的包,而不是严格地说是在星期五。代码必须始终处于工作状态。@Kumar:我想你是对的,可能是我们选择的工作流造成了问题。下面的Jbu建议查看工作流,试图找到一个适合我们流程的工作流。我会通读一遍,希望能找到一些清晰。jbu,谢谢你的回复,我会去看看工作流程。