How do I “undo” a –single-branch clone?

I cloned a repo using the

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

  • git: How do I add a custom merge strategy?
  • What's the difference between “squash” and “fixup” in Git/Git Extension?
  • Move git repository to another github user
  • Git 2.13 conditional config on windows
  • Error while deploying application in heroku
  • Searching code in a specific github Branch
  • This cloned ONLY this branch, but now I want to switch to the master and other branches. Is there any way besides clearing it out and starting over to clone the rest of the repo that I can undo the –single-branch preference?

  • Is there any way to select and stage multiple files at once in GitKraken?
  • HEAD~ for a merge commit
  • why merge does not cause conflict
  • git removing a development branch from remote git server
  • github network shows a mysterious branch
  • fatal: Failed to resolve HEAD as a valid ref
  • 4 Solutions collect form web for “How do I “undo” a –single-branch clone?”

    You can tell Git to pull all branches like this:

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

    If you look in .git/config, it’ll look something like this:

        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
        ignorecase = true
        precomposeunicode = false
    [remote "origin"]
        url =
        fetch = +refs/heads/master:refs/remotes/origin/master
    [branch "master"]
        remote = origin
        merge = refs/heads/master
        rebase = true

    I compared this to a full clone, and saw that the only difference was the “fetch” under [remote "origin"].

    Note: I’m running Git version 1.8.2. The config options may have changed if you’re running an older version of Git. If my commands don’t work, then I’d recommend looking through .git/config to see if you can see something similar.

    If you want to add a single branch, you can do the following:

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

    Works with git version 1.9.1

    Just add the original repo as a new remote, and work off of there?

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

    You can even delete your current ‘origin’ remote and rename ‘myNewOrigin’ to ‘origin’ if you would want to.

    From there you can pull/merge/rebase.

    You can very easily download all branches but using git pull origin *:*

    Git Baby is a git and github fan, let's start git clone.