Git工作流两个开发者远程,最佳实践



我知道这个问题已经以许多不同的形式被问到,但是我还没有看到我想要的配置,所以我把它扔在那里。

我想要的:
1. 主版本的2个克隆,因此每个克隆都有自己的完整版本的项目,因此一个子域用于他当前的工作,而另一个子域用于挖掘,这样我们都可以看到我们在各自的远程克隆中提交并推送到远程服务器的更改。

  1. 我们都有自己的本地版本的远程文件夹/克隆。

本质上,我们都有自己的分支,我们都没有提交到主分支。在这种情况下,我的个人分支可以被认为是主分支,因为我希望他能够做出他的更改,我能够在他的子域上看到并测试它们,然后他们将它们合并到我自己的子域。

我还希望他能够将我最近提交到远程服务器的提交拉到他自己的远程克隆中,然后再拉到他的本地机器上,这样他就总是有我最新的代码。

这方面的最佳实践是什么?到目前为止,这就是我们一直在做的事情,这是一个巨大的麻烦,让我讨厌git。

  1. 我在本地做更改,提交它们,然后推送到同一分支的远程文件夹。
  2. 他将他的本地文件夹/分支与我所做的远程提交合并。他在本地做的任何提交,然后提交到他的远程分支/子域。(这应该意味着他的远程分支还包括他合并的更改,因为他的远程文件夹应该是他的本地机器的精确副本)
  3. 在检查和测试后,我说一个功能是完整的,然后我合并到我的本地分支/文件夹
  4. 我推到我的远程分支/文件夹,所有的东西都可以在我的域上看到。

这不是正确的做事方式吗?任何建议或建议,非常感谢!

最重要的是我们每个人都有自己的分支,并且可以为功能创建额外的分支并将它们合并到我们自己的分支中。而且,我们每个人在服务器上的不同文件夹中都有我们本地机器的精确副本,这些文件夹由web服务器通过子域指向,因此可以在不同状态下同时查看两者。

我提前为这篇文章的长度道歉,我只是想尽可能清楚。

你写的东西是不可扩展的——如果再增加一个开发人员,你该怎么办?

相反,使用以下分支:

  • 主(始终是干净的,仅用于部署到生产服务器)
  • 分级(总是干净的)
  • 验收(混乱)

创建新的分支:

git checkout staging
git pull
git checkout -b feature/JF_my_new_feature_20141018

(使用一组唯一的首字母,以便您知道谁写了分支,并在分支上加盖日期戳)

当您对您的分支感到满意(并且您的测试运行良好)时,您将合并到验收并在那里运行测试。当你的同事(或者你的QA团队,或者任何人)已经确认分支是好的,你就把它合并到阶段中。

每个人总是从登台创建新的分支,没有其他人的大拇指,没有人合并到登台。

最新更新