同事可以访问 Git 本地分支
鲍勃、本和迈克正在开发一个很棒的项目。
Bob 创建了一个名为 foo 的本地分支。 Bob 将与 Ben 共享分支 foo,以便 Ben 可以拉动和推送它。 鲍勃不想向迈克展示这个分支。 鲍勃不想将此分支推送到原点。
这种情况最简单的设置是什么?
Bob, Ben and Mike are working on an awesome project.
Bob has created a local branch named foo.
Bob will share branch foo with Ben, so Ben can pull and push to it.
Bob don't want show this branch to Mike.
Bob don't want push this branch to origin.
What is the simplest setup for such scenario ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
我发现的最简单的方法是在我的计算机上创建一个裸存储库,将我想要的任何分支推送到它,然后共享该文件夹并使用操作系统内置的普通文件夹共享分配权限。无需安装和学习额外的软件。它的扩展性不是很好,但对于一次性的小情况来说它非常有用。
The easiest way I've found is to create a bare repository on my computer, push whatever branches I want to it, then share that folder and assign permissions using the normal folder sharing built into the operating system. No extra software to install and learn. It doesn't scale very well, but it's great for little one-time situations.
管理授权访问的最简单方法仍然是在您的设备上添加一个额外的层,例如 Gitolite自己的仓库,以便管理 分支访问权限。
The easiest way to manage authorization access remains adding an extra layer like Gitolite on your own repo, in order to manage branch access rights.
如果这些存储库位于开发人员本地计算机上,您可以:
向 Ben 授予 Bob 计算机上的 ssh 访问权限,并使 Ben 可以读取 Bob 的存储库(默认情况下可能已经是这样)。然后 Ben 运行:
Ben 现在将拥有另一个名为 bob 的遥控器,例如他可能已经拥有的“origin”。 Ben 可以执行以下操作:
git pull bobbranchname
If these repositories are on the developers local machines, you can:
Give Ben ssh access on Bob's machine and make Bob's repository readable by Ben (it already might be by default). Then Ben runs:
Ben will now have another remote named bob like "origin" that he probably already has. Ben can do things like:
git pull bob branchname
Bob 必须将此分支推送到 Ben 的本地存储库。
Bob has to push this branch to Ben's local repo.
也许像 Bananajour 这样的工具可能会有用。
Maybe a tool like Bananajour could be useful.