我想知道如何建立一个简单的Git工作流程,其主要目标是简化同行评审代码的过程。
假设我们只有两个人在一个项目上工作。我们坐在同一间办公室,而无需同时处理同一文件。我们进行统计分析,这需要进行大量的探索性工作。我想确保我编写的每个相关代码都得到同行的“校对”,反之亦然。我正在考虑使用Git来跟踪此过程。
根据我对Git中协作的有限了解,似乎我们可以拥有一个master分支,其中包含已校对的代码,并且每当我们每个人生成一个新文件或编辑一个旧文件时,就分支该分支。例如。我创建了一个新文件,该文件位于一个专门的分支中,当准备好对发送给我的同事的合并请求进行校对时。一旦所有编辑被批准,这将开始对话并以合并到master分支结束。然后删除专门的分支。
我的第一个问题是:上述工作流程或多或少合适?还是我完全误解了这些概念?
我们实际上不在本地工作,所以这是我的第二个问题。我们在通过远程桌面连接到的远程服务器上工作,在该服务器上访问相同的文件。也就是说,当前我们的工作目录对于我们两个都是完全相同的。我们在此服务器中有一个git存储库(我们的“本地”存储库),在gitLab中有一个备份(我们的“远程”存储库)。有了这个设置,我的理解是,如果我分支来开发新的代码,我将迫使我的同事也位于该分支中。但是我的同事可能想在其他部门发展其他东西。因此,这似乎有问题。
这种直觉对吗?解决方案是否需要为服务器中的每个开发人员提供单独的工作目录,以及通过位于GitLab中的远程存储库相互通信的单独的“本地”存储库?例如。我分支,提交,推送并创建合并请求-我的同事拉,查看我的代码,批准合并并删除分支,然后提交并推送。