Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何从开发分支而不是主分支中提取最新文件?_Linux_Git_Github_Terminal_Virtualbox - Fatal编程技术网

Linux 如何从开发分支而不是主分支中提取最新文件?

Linux 如何从开发分支而不是主分支中提取最新文件?,linux,git,github,terminal,virtualbox,Linux,Git,Github,Terminal,Virtualbox,我是Git的新手,在这里我真的很困惑。我有一个来自github的HTTPS,我正在使用虚拟盒中的终端来尝试从我的一个分支中提取最新的文件 每次我使用以下命令时: git-pullhttp-link或git-clone-http-link 它只从主分支提取文件,而不是从所有分支提取文件。我知道这一点,因为当我运行git分支时,我只看到主分支,而不是github中的develop分支。我想要这个开发分支(不是主分支)的文件,这样我可以在合并到主分支之前将更改推送到该分支。请告知 它只从主分支提取文件

我是Git的新手,在这里我真的很困惑。我有一个来自github的HTTPS,我正在使用虚拟盒中的终端来尝试从我的一个分支中提取最新的文件

每次我使用以下命令时:

git-pullhttp-linkgit-clone-http-link 它只从主分支提取文件,而不是从所有分支提取文件。我知道这一点,因为当我运行git分支时,我只看到主分支,而不是github中的develop分支。我想要这个开发分支(不是主分支)的文件,这样我可以在合并到主分支之前将更改推送到该分支。请告知

它只从主分支提取文件,而不是从所有分支提取文件

pull
的规则在某种程度上取决于配置,但我可以告诉您,当您克隆
时,它将获取整个历史记录(所有分支),除非您给它特定的选项告诉它不要(例如
--单分支

我知道这一点,因为当我运行git分支时,我只看到主分支

这是因为默认情况下,
git branch
列出了本地分支,而不是来自远程的所有已知分支。你可以说

git branch -a
git checkout branch-name
看看其他的。它们将以如下名称出现

remotes/origin/branch-name
因为你拥有的不是真正的分支;相反,这些是一种“书签”,告诉你遥控器的分支在哪里,你最后一次从遥控器取回的时间

默认情况下,克隆不会自动为远程上的每个分支创建本地分支(但它会获取分支)。默认情况下,克隆会从远程签出默认分支(本例中为主分支),并为其创建本地分支。git内置了一些快捷方式,在一个典型的配置中,您可以说

git branch -a
git checkout branch-name
创建与远程的
分支名称
分支对应的本地分支

请注意,当您执行此初始签出时,您不想说

git checkout remotes/origin/branch-name

因为那会有别的作用。与其创建本地分支,不如将您置于“分离的
HEAD
”状态,
HEAD
与远程分支处于同一提交状态。

相关您基本上需要获取远程分支,您需要创建远程跟踪分支非常感谢!这是非常有见地和有益的!