Git签出-如何

Git签出-如何,git,version-control,branch,Git,Version Control,Branch,我刚刚在本地克隆了一个存储库。我们总是希望开发分支已经是存储库的一部分。当我列出所有分支时,如下所示: git branch -a master (with an *) remotes/origin/HEAD -> origin/master remotes/origin/develop remotes/origin/master 结果如下: git branch -a master (with an *) remotes/origin/HEAD -> origin/maste

我刚刚在本地克隆了一个存储库。我们总是希望开发分支已经是存储库的一部分。当我列出所有分支时,如下所示:

git branch -a
master (with an *)
remotes/origin/HEAD -> origin/master
remotes/origin/develop
remotes/origin/master
结果如下:

git branch -a
master (with an *)
remotes/origin/HEAD -> origin/master
remotes/origin/develop
remotes/origin/master
现在如何签出开发分支并开始工作。 当我说

git checkout

Checking out files: 100% (2436/2436), done.
Note: checking out 'develop'.
enter code here`
enter code here`You are in 'detached HEAD' state. You can look around, 
make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.
如果要创建新分支以保留创建的提交,可以 再次将-b与checkout命令一起使用(现在或以后)。范例

git checkout -b new_branch_name
如果我使用签出,它似乎正在创建一个新的本地分支

git checkout -b new_branch_name
我想到的另一个选择是

git checkout -b develop origin/develop
很明显,我对Git分支缺少一些基本的理解。
我想澄清上述问题,以及当我们已经在远程上有分支机构时,分支机构如何工作。

要签出远程分支机构,您应该点击

git checkout remote_branch_name
如果要切换到本地分支机构

git checkout -b local_branch_name

阅读更多关于它的信息

实际上所有的分支引用都存在于
.git/refs/remotes目录中
。您可以直接切换到不同的分支。例如,如果要创建跟踪远程分支的本地分支,请执行以下操作:

git checkout -b local_brach_name origin/remote_brach_name
例如:

git checkout -b develop origin/develop

将创建一个名为develope的本地分支,跟踪同名的远程分支(该命令还将签出到此新本地分支)

我认为这两个答案都是对的,但以防万一,一点帮助:p

remotes/origin/HEAD -> origin/master
remotes/origin/develop
remotes/origin/master
  • git分支-->创建一个新的本地分支
  • git checkout->使用它在分支之间移动
  • git checkout-b--->创建并移动到新的本地分支。 (相当于分行+结帐)
现在,只要您克隆了repo,您就可以“
git签出开发”
,因为克隆repo时远程分支已经存在,那么您就不“必要”需要
git分支开发和&git签出开发


另一个避免确认的评论是:克隆回购协议时,它只创建主本地分支。(我的意思是,如果您使用git clone和git branch,您将看到master*)所有远程分支都可用,但您始终需要
git checkout
才能在该分支中编码。(请记住,如果存在remotebranch,您可以进行简单的git签出,如果不存在,您需要在本地创建,然后根据需要推送)

“我们是预期的”,我假设您将获得关于如何使用所需工具的在职培训,您应该与您的团队负责人联系,查看此类培训有哪些选项。@user2186453,有什么答案可以帮助你解决这个问题吗?如果是,请标记它,因为它将帮助有类似问题的人。如果这是一个基本问题,对不起。那么,我为什么要“创建”一个本地分支机构呢。该分支已存在于存储库中,我已将其克隆。@user2186453在git中,您不能直接在远程分支上工作,必须拥有自己的本地副本。从输出中,您克隆了主分支,git为其创建了本地副本。如果您克隆了开发分支,git会为您创建一个本地副本,始终跟踪远程分支。您可以使用
git branch
检查您的本地分支机构。这可能会帮助您更好地了解远程分支的工作方式。