Cloning specific branch

前端 未结 7 849
南笙
南笙 2021-01-31 09:40

I am new to git version control and I dont know how to clone / pull a specific branch of a repo . Trying to get the branch master of the project, but it defaults to

相关标签:
7条回答
  • 2021-01-31 09:50

    Please try like this : git clone --single-branch --branch <branchname> <url>

    replace <branchname> with your branch and <url> with your url.

    url will be like http://username@git.test.com:portno/yourrepo.git.

    0 讨论(0)
  • 2021-01-31 09:51

    To clone a particular branch in a git repository

    - Command: git clone "repository_url" -b "branch_name"
    - Example: git clone https://gitlab.com/amm.kazi/yusufoverseas.git -b routes

    0 讨论(0)
  • 2021-01-31 09:54

    You can use the following flags --single-branch && --depth to download the specific branch and to limit the amount of history which will be downloaded.

    You will clone the repo from a certain point in time and only for the given branch

    git clone -b <branch> --single-branch <url> --depth <number of commits>
    

    --[no-]single-branch


    Clone only the history leading to the tip of a single branch, either specified by the --branch option or the primary branch remote’s HEAD points at.

    Further fetches into the resulting repository will only update the remote-tracking branch for the branch this option was used for the initial cloning. If the HEAD at the remote did not point at any branch when --single-branch clone was made, no remote-tracking branch is created.


    --depth

    Create a shallow clone with a history truncated to the specified number of commits

    0 讨论(0)
  • 2021-01-31 10:02

    You may try this

    git clone --single-branch --branch <branchname> host:/dir.git
    
    0 讨论(0)
  • 2021-01-31 10:04

    I don't think you fully understand how git by default gives you all history of all branches.

    git clone --branch master <URL> will give you what you want.

    But in fact, in any of the other repos where you ended up with test_1 checked out, you could have just done git checkout master and it would have switched you to the master branch.

    (What @CodeWizard says is all true, I just think it's more advanced than what you really need.)

    0 讨论(0)
  • 2021-01-31 10:07

    a git repository has several branches. Each branch follows a development line, and it has its origin in another branch at some point in time (except the first branch, typically called master, that it starts as the default branch until someone changes, what almost never happens)

    If you are new with git, remember those 2 fundamentals. Now, you just need to clone the repository, and it will be in some branch. if the branch is the one you are looking for, awesome. If not, you just need to change to the other branch - this is called checkout. Just type git checkout <branch-name>

    In some cases you want to get updates for a specific branch. Just do git pull origin <branch-name> and it will 'download' the new commits (changes). If you didn't do any changes, it should go easy. If you also introduced changes on that branches, conflicts may appear. let me know if you need more info on this case also

    0 讨论(0)
提交回复
热议问题