我如何“撤销”a

我用克隆克隆了一个回购

git clone -b <branch name> --single-branch <github url> <target directory>

这只克隆了这个分支,但现在我想切换到主分支和其他分支。 除了清除它并开始克隆其余的回购,我可以撤销 - 单支首选?


你可以告诉Git像这样拉所有分支:

git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
git fetch origin

如果你看看.git/config ,它会看起来像这样:

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
    precomposeunicode = false
[remote "origin"]
    url = https://github.com/owner/repo.git
    fetch = +refs/heads/master:refs/remotes/origin/master
[branch "master"]
    remote = origin
    merge = refs/heads/master
    rebase = true

我将它与完整的克隆进行了比较,发现唯一的区别是[remote "origin"]下的“获取[remote "origin"]

注意:我正在运行Git 1.8.2版。 如果您运行的是较旧版本的Git,配置选项可能已更改。 如果我的命令不起作用,那么我建议通过.git/config查看是否可以看到类似的东西。


如果您想添加一个分支,您可以执行以下操作:

git remote set-branches --add origin [remote-branch]
git fetch origin [remote-branch]:[local-branch]

适用于git版本1.9.1


只需将原始回购添加为新的远程设备,并在那里工作?

git remote add path/to/myrepo myNewOrigin
git fetch myNewOrigin

如果你愿意的话,你甚至可以删除当前的'origin'remote并将'myNewOrigin'重命名为'origin'。

从那里你可以拉/合并/ rebase。

链接地址: http://www.djcxy.com/p/26117.html

上一篇: How do I "undo" a

下一篇: Branches vs. New Project in Git