你如何使用git从不同的分支中拔出?

时间:2014-07-16 18:52:15

标签: git github

我试图从与主分支不同的分支中提取一些文件。

然而,我收到错误:

fatal: 'origin' does not appear to be a git repository
fatal: could not read from the remote repository

这是我的分支: enter image description here

这是我试图拉的命令: enter image description here

任何建议将不胜感激。感谢

2 个答案:

答案 0 :(得分:3)

您从未从github存储库克隆(或之后设置遥控器)。

  • 通过克隆你的github repo来创建本地存储库:

    git clone git@github.com:username/repository.git
    
  • 或者在初始化空存储库后设置远程源:

    git init
    git remote add origin git@github.com:username/repository.git
    git fetch origin
    

答案 1 :(得分:0)

Git是一个完全分布式的版本系统。这意味着您不能直接在远程服务器上工作,而是在本地工作并在本地和远程仓库之间拉取和推送更改。

首先,您需要将您的存储库置于本地,您可以通过多种方式执行此操作,但一种简单的方法是从远程站点git-clone存储库,即在github上: git clone ssh://git@github.com/username/repository.git

来自git-clone man page

  

将存储库克隆到新创建的目录中,为克隆存储库中的每个分支创建远程跟踪分支(使用git branch -r可见),并创建并检出从克隆存储库当前活动分叉的初始分支分支。

这意味着它将签出最可能的主人的默认分支。

如果你将分支标志包含在git clone中,你将从git-clone man page获得一个特定的分支:

  

- 分支
  -b
  而不是将新创建的HEAD指向克隆存储库的HEAD指向的分支,而是指向分支。在非裸存储库中,这是将要检出的分支。 --branch还可以在生成的存储库中的标记处获取标记并分离HEAD。

所以你可以运行
git clone -b gh_pages ssh://git@github.com/username/repository.git
结帐特定分行。

或者,如果您已经克隆了回购,则可以设置新分支并运行:
git checkout -b gh_pages --track origin/gh_pages

这将在本地签出一个新分支,并将其命名为gh_pages。它将跟踪gh_pages的远程原点分支,这样当你推拉时,它将使用origin / gh_pages。