git - 与客户的 GitLab 连接的工作流程是什么?
问题描述
我们是一家拥有自己的 GitLab 实例的开发公司。到目前为止,我们的项目包括两种可能性:
- 我们开发一个全新的项目并维护 Git 项目,或者
- 客户给我们带来了现有代码(没有源代码控制),我们在 GitLab 实例中设置了一个 Git 项目。
我们有一个新客户,这对我们来说是一个独特的情况。这个客户端有一个现有的 GitLab 实例并在那里维护代码。
这是我希望看到该过程的方式:
- 他们维护他们的回购协议,
- 我们克隆/分叉/复制他们的仓库,
- 我们对我们的回购进行调整,并且
- 我们将这些更改推送到他们的仓库。
如您所知,我对 Git 词汇的了解很差。我究竟会要求他们的开发团队做什么才能让我们访问?
当人们分叉这些项目时,我之前在开源项目中看到过这个工作流程,但我没有开源开发经验,所以不确定底层基础设施是如何工作的。
我的主要目标是获得我需要的术语,以确保我将正确的请求传递给客户的团队。
澄清一下,我们欢迎在这里规定任何开发条款,因此没有限制。我的主要目标:
- 我想在客户访问它们之前审查所有提交,
- 我希望客户不能直接访问我们的开发人员,并且
- 我希望我们的开发人员能够推送到我们的 GitLab 实例,这样他们就不需要在他们的机器上设置额外的基础设施。
解决方案
您只能在受保护的分支上使用项目镜像(并且只保护主分支)
这样,只有在 master 上合并、在您自己的 gitlab 中有合并请求、在您自己的 gitlab 中有分支等等时,您才会向他们发送更新......
您可以从 gitlab 项目的存储库设置中执行此操作。
推荐阅读
- gradle - gradle 排除传递依赖
- python - 在 python 中使用字典时遇到的问题
- python - 如何跟踪 DCGAN 的损失
- javascript - React-Native:从父组件调用组件内的函数
- php - 我想在 cakephp 中创建 zip 文件。但是我的代码不起作用?
- apache - 如何在 Apache http server 2.4.43 中为特定端口记录所有 HTTP 标头
- javascript - 删除机器人消息和用户命令的 Discord.js 命令
- java - NOR、NAND 或 XNOR 的符号/方法/功能?
- django - 模型不渲染
- android - 带有协程的 liveData 仅第一次触发