首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Git:未经推送许可,跨分支机构进行团队合作。

Git:未经推送许可,跨分支机构进行团队合作。
EN

Stack Overflow用户
提问于 2011-07-11 06:31:53
回答 1查看 2.4K关注 0票数 5

我目前正在为一个Scrum团队工作,该团队正在与另一个Scrum团队使用共享的git存储库。为了方便起见,我们将调用我的scrum团队Autobot和其他霸天虎

Team 霸天虎对存储库具有完全的推挽访问权,并负责该框架。

Team Autobot可以拉,但不能推。一般来说,如果团队成员独立工作,就没有问题。但是,会出现这样的情况,即拉和推到另一个团队成员分支是有用的。到目前为止,Autobot还没有被霸天虎(简易修复)授予推送访问权,因此需要进行一些工作。

一个用例示例:考虑擎天柱(为了继续进行变压器的比喻)是否已经完成了以下操作:

代码语言:javascript
复制
#!/bin/bash
optimus@workstation0:~/git/work_project/> git branch sdev /sprint/dev --track
optimus@workstation0:~/git/work_project/> git checkout sdev
optimus@workstation0:~/git/work_project/> touch important_file.py
optimus@workstation0:~/git/work_project/> git add important_file.py
optimus@workstation0:~/git/work_project/> git commit -m "Important file added."

现在,Rodimus将通过编辑important_file.py来帮助擎天柱。他创造了自己的分支,直接从擎天柱的树枝上拉出来,并试图推动:

代码语言:javascript
复制
#!/bin/bash
rodimus@workstation1:~/git/work_project/> git branch sdev /sprint/dev --track
rodimus@workstation1:~/git/work_project/> git pull ~optimus/git/work_project sdev
rodimus@workstation1:~/git/work_project/> echo "'''TODO: Add content''' > important_file.py
rodimus@workstation1:~/git/work_project/> git commit -m "Added TODO".
rodimus@workstation1:~/git/work_project/> git push ~optimus/git/work_project sdev

错误就会发生。正确的程序是什么?拥有第二个存储库是不可取的,但如果需要的话则是可行的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-11 07:03:45

2014年更新(3年后)

正如阿德里安评论中提到的

存储已实现的分支级权限

见"使用分支许可

原答复(2011年7月)

通常的解决方案是进行第二次回购,其中:

  • 自动机器人团队可以推进到
  • 霸天虎队可以定期获取并查看是否有什么需要合并的。

但这需要第二次回购。

另一种解决方案是,使用像海泡石这样的授权框架来提供推动对Autobot分支的访问

它只需要一个repo,但是服务器(ssh或apache)能够对用户进行身份验证(因为局部协议没有身份验证)。

因此,这两种解决方案都不是一个容易解决的问题。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6646517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档