克隆特定分支

时间:2016-12-20 01:00:04

标签: git github

我是git版本控制的新手,我不知道如何克隆/拉出回购的特定分支。试图获取项目的分支master,但默认为分支test_1

我尝试使用git clone命令,但它抓取了默认test_1。我也尝试过阅读其他问题,但命令令我困惑,我不想破坏任何东西。

如何克隆此项目的主分支,以便我可以进行更改并推送到它?

7 个答案:

答案 0 :(得分:38)

您可以使用以下标记--single-branch&& --depth下载特定分支并限制将下载的历史记录数量。

您将从特定时间点克隆repo,仅针对给定分支

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

<强> - [无糖]单分支

           

克隆导致单个分支提示的历史记录,   由--branch选项指定或主分支远程的HEAD指向。

     

进一步提取到生成的存储库只会更新分支的remote-tracking分支,此选项用于初始克隆。如果在进行--single-branch克隆时远程处的HEAD未指向任何分支,则不会创建远程跟踪分支。

  

- 深度

     

创建一个浅层克隆,其历史记录被截断为指定的提交次数

答案 1 :(得分:22)

您可以将此命令用于特定的分支克隆:

git clone <url of repo> -b <branch name to be cloned>

Eg: git clone https://www.github.com/Repo/FirstRepo -b master

答案 2 :(得分:6)

我认为你并不完全明白git默认如何为你提供所有分支的历史记录。

git clone --branch master <URL>会给你你想要的东西。

但事实上,在你最终签出test_1的任何其他回购邮件中,您可能刚刚完成了git checkout master并且它会将您切换到主分支。

(@CodeWizard说的都是真的,我认为它比你真正需要的更先进。)

答案 3 :(得分:6)

克隆git存储库中的特定分支

- 命令: git clone&#34; repository_url&#34; -b&#34; branch_name&#34;
  - 示例: git clone https://gitlab.com/amm.kazi/yusufoverseas.git -b routes

答案 4 :(得分:5)

git存储库有几个分支。每个分支都遵循一个开发线,并且它在某个时间点(第一个分支,通常称为master)起源于另一个分支,它作为默认分支开始,直到有人改变,几乎从未发生过。

如果你是git的新手,请记住这两个基本原理。现在,您只需要克隆存储库,它将位于某个分支中。如果分支是你正在寻找的那个,真棒。如果没有,您只需要更改到另一个分支 - 这称为结帐。只需输入git checkout <branch-name>

即可

在某些情况下,您希望获取特定分支的更新。只需执行git pull origin <branch-name>即可“下载”新提交(更改)。如果你没有做任何改变,它应该很容易。如果您还在该分支上引入了更改,则可能会出现冲突。如果您还需要有关此案例的更多信息,请告诉我

答案 5 :(得分:0)

您可以尝试

public IActionResult GetPrintById(int id)
{
    ServiceJobModel model = new ServiceJobModel();

    // Service Job Detail
    var serviceJob = _Db.ServiceJob.Where(x => x.Id == id).FirstOrDefault();

    model.Id = serviceJob.Id;
    model.Date = serviceJob.Date;

    return View("Print");
}

答案 6 :(得分:0)

请尝试这样: git clone --single-branch --branch <branchname> <url>

<branchname>替换为您的分支,并将<url>替换为您的网址。

url类似于http://username@git.test.com:portno/yourrepo.git