git-从特定分支中拉出


197

我已经将git存储库克隆到了我的dev服务器,然后切换到dev分支,但是现在我无法执行git pull来更新分支。

如何更新服务器上的代码?

Answers:


258

请参见git-pull手册页

git pull [options] [<repository> [<refspec>...]]

并在示例部分中:

接下来将远程分支合并到当前分支中:

$ git pull origin next

所以我想你想做类似的事情:

git pull origin dev

对其进行设置,使其在您进入dev分支时默认执行此操作:

git branch --set-upstream-to dev origin/dev

6
--set-upstream标志已弃用,将被删除。考虑使用--track--set-upstream-to Branch dev设置为从源头跟踪远程分支dev。” 例如。git branch --set-upstream-to origin/dev
Nagendra Rao

编辑此内容以反映对--set-upstream的弃用?
斯科特·斯基尔斯

就个人而言,当我想从尚未提取的原点中拉出一个特定分支并将这些对象放在单独的分支上时,我会对流程感兴趣,因此我当前的分支不会与我要拉的对象合并。
尤里·波兹尼亚克

43

这是您需要做的。首先,确保您在不想拉的分支中。例如,如果您拥有master和development分支,而您正试图拉开development分支,则留在master分支中。

git checkout master

然后,

git pull origin develop

5
这很混乱。如果我想将远程“ dev”分支拉入本地“ dev”分支,我认为您需要停留在本地“ dev”分支而不是其他任何分支。
罗马

2
这不是获取远程开发分支,然后将其与本地主服务器合并吗?
Brad P.

2
我做到了git checkout developgit pull origin develop并且工作良好。如果要删除本地或远程分支(git branch -d developgit push origin --delete develop),则需要签出其他分支
-ChesuCR

非常混乱。我刚刚将我想测试的分支合并到本地:)
Fabian Bosler,

正如@roman所说,一个必须在本地分支机构中。
woter324

15

将这两个动作分开通常更清楚git pull。它要做的第一件事是更新与远程分支相对应的本地跟踪变量。可以使用完成此操作git fetch。第二个是它然后合并更改,这当然可以用完成git merge,尽管其他选项(例如git rebase偶尔使用)也可以。


7

Laravel文档示例:

git pull https://github.com/laravel/docs.git 5.8

根据命令格式:

git pull origin <branch>

👍


5

这是拉特定分支或任何分支的步骤,

1.克隆主机(需要提供用户名和密码)

       git clone <url>

2.上面的命令将克隆存储库,您现在将成为master分支

       git checkout <branch which is present in the remote repository(origin)>

3.上面的命令将签出到您要拉出的分支,并将其设置为自动跟踪该分支

4,如果由于某种原因无法正常工作,请在本地系统中签出该分支后,运行以下命令

       git pull origin <branch>

1

您可以在git分支上进行更新/拉动,可以使用以下命令

git pull origin <branch-name>

上面的命令将从给出分支名称的位置进行更新/拉取

如果要从其他分支机构拉取,则需要转到该分支机构。

git checkout master

git pull origin development

希望对你有用



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.