两个远程开发者的Git工作流,最佳实践是什么?

3
我知道这个问题已经以许多不同的形式被问过了,但我还没有看到我想要的配置,所以我想抛出这个问题。
我的需求如下: 1. 2个主分支的克隆,因此每个克隆都有自己项目的完整版本,以便一个子域名进入他的当前工作,另一个子域名进入我的当前工作,这样我们都可以看到我们在各自的远程克隆中提交和推送到远程服务器的更改。
我们两个都有我们自己的远程文件夹/克隆的本地版本。
实质上,我们都有自己的分支,我们都不会将其提交到主分支。在这种情况下,我的个人分支可以被认为是主分支,因为我希望他能够进行更改,我能够在他的子域名上看到并测试它们,并将它们合并到我的分支中。
我还希望他能够从远程服务器拉取我的最新提交到他自己的远程克隆中,然后随后到他的本地机器,以便他始终拥有我的最新代码。
对此有什么最佳实践吗?目前为止,这就是我们一直在做的事情,它让我非常烦恼,让我讨厌 Git。
我们的做法如下: 1. 我在本地进行更改,提交,然后推送到相同分支的远程文件夹。 2. 他将本地文件夹/分支与我所做的远程提交合并。 3. 他提交了本地的任何更改,然后提交到他的远程分支/子域名。(这应该意味着他的远程分支也包括他合并的我的更改,因为他的远程文件夹应该是他本地机器的精确副本) 4. 在检查和测试后,我认为一个功能已经完成,然后将其合并到我的本地分支/文件夹中。 5. 我将其推送到我的远程分支/文件夹中,一切都可以在我的域上看到。
我们这样做不正确吗?有什么建议或建议吗?
重要的是,我们每个人都有自己的分支,并且可以创建其他功能分支并将它们合并到自己的分支中。而且我们每个人都在服务器上拥有本地机器的精确副本,位于不同的文件夹中,由 Web 服务器通过子域名指向,因此可以同时查看不同状态的两个复制品。
对于篇幅过长,我提前道歉。
1个回答

1
你所写的代码不够可扩展性 - 添加第三个开发人员,那该怎么办呢?
相反,应该有以下分支:
- master(始终保持干净,仅用于部署到生产服务器) - staging(始终保持干净) - acceptance(杂乱无章)
你可以从staging创建新分支:
git checkout staging
git pull
git checkout -b feature/JF_my_new_feature_20141018

(使用唯一的缩写来确定谁编写了分支,并对分支进行日期标记。)

当您满意自己的分支(并且测试运行良好)时,将其合并到接受分支并在那里运行测试。当您的同事(或您的QA团队或其他人)已验证该分支很好时,您将其合并到暂存分支。

每个人都总是从暂存分支创建新的分支,并且没有人会在没有他人的认可下将其合并到暂存分支中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接