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

标签 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/原点/a/*.当然,他们可以从我的 /a/ 命名空间中获取分支。但我不希望默认情况下发生这种情况,这样我的工作提交就不会弄乱其他人的历史图表。

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

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

最佳答案

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

这是假设你们都共享一个中央存储库作为远程存储库,而不是向彼此的本地存储库推送/pull 。

关于git - 如何在 git 中为 'private' 分支配置命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6792955/

相关文章:

android - 当我进行 repo 同步时,幕后会发生什么?

git - Visual Studio 2012 git ssh

git - 如何从 Sourcetree 的全局 .gitignore 列表中删除文件?

java - 在 Java 应用程序中包含 GIT 安装

git - 何时在 git 中推送到原点

java - 使用 ssh NBGit 到远程主机

java - 一个仓库中的多个项目 GitHub

git - 从私有(private) Git 存储库中推送/pull 的 Bash 脚本?

git - 从远程 Git 存储库中删除或移除所有历史记录、提交和分支?

git - 在 Git 中以只读目的 check out 早期标记的最简洁方法