gpt4 book ai didi

Git 子分支或类似的概念

转载 作者:太空狗 更新时间:2023-10-29 13:51:30 24 4
gpt4 key购买 nike

git 支持子分支的概念吗?即分支的分支

例如,一组教师在网络驱动器上有一个裸共享存储库(没有服务器 ssh 身份验证等),他们将其 pull 并推送到共享驱动器上,并在适当的时候 merge 到 master 中。

此 repo 将包括教师文件(例如已解决的解决方案)以及学生文件。

学生不应该克隆这个 repo,也不应该直接检查他们各自的教师分支,因为它包含答案。

但是 repo 可以包含每个类/主题的分支,其中只有跟踪上游更改的学生文件。学生然后分支这个分支来做他们的工作。老师将学生分支作为远程跟踪并 pull 入工作。

我最接近上述的是将一个分支克隆到一个单独的存储库中,并让学生在该存储库中分支。上述问题包括明显的数据重复(windows 对 git 中系统链接的支持很差)和额外的类/主题存储库必须随着上游更改而保持更新。

有什么想法可以更好地支持 Git/LibGit2 中的这个工作流吗?

最佳答案

git 中没有主分支的概念(master 是 git 默认提供的完全正常的分支)。您可以从 master 分支,您可以从任何其他分支分支,您可以从分支分支分支分支分支分支。

对于您的具体问题,git 没有分支可见性的概念。如果我克隆您的存储库,我就能很好地获得所有分支,您的本地存储库如何跟踪远程分支并不重要。

简而言之,如果您不希望人们拥有存储库可用的信息,就不要让他们克隆它。提供仅包含您需要的信息的不同远程存储库,并仅将相关信息推送到那里。

例如,我的 repo 有分支 publicprivate-1private-2,我可以将所有分支推送到origin(git push private-remote private-1 等),并有另一个远程设置,您严格只将 public 推送给它。

然后你的学生克隆公共(public)远程,从 public 分支,推送他们的更改和他们自己的分支,然后你可以从 public-remote pull 出这些分支并推送进入您的 private-remote。 Git 很好地支持多个远程。

关于Git 子分支或类似的概念,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30051111/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com