如何在git中为'private'分支配置名称空间?

时间:2011-07-22 16:19:21

标签: git

默认情况下,是否可以将git存储库配置为不从源存储库的某些名称空间获取分支?

我想要的是将我当前的工作放在某个命名空间中,以便其他人知道它还没有准备好。例如,如果我像这样配置名称空间a

[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    fetch = +refs/heads/a/*:refs/remotes/origin/a/*
    push = +refs/heads/a/*:refs/heads/a/*
    url = some_git_url

其他人会有fetch = +refs/heads/*:refs/remotes/origin/*行而不是fetch = +refs/heads/a/*:refs/remotes/origin/a/*。当然,他们可以从我的/a/命名空间中获取分支。但我希望默认情况下不会发生这种情况,这样我的工作提交就不会混淆其他人的历史图表。

问题是似乎refs/heads/*包含嵌套的命名空间。因此,当我在任何机器上执行git fetch时,我仍然可以从/a/命名空间获取所有内容。

有没有办法像我想要的那样配置git?告诉git只从refs/heads/获取直接分支?

1 个答案:

答案 0 :(得分:0)

在本地保留您的工作分支,只推送共享分支。要求其他人也这样做。

假设您所有人都将中央存储库作为远程共享,而不是推送/拉出彼此的本地存储库。