这个git分支是本地的还是远程的?

时间:2015-04-16 20:44:26

标签: git git-remote

我已将USB记忆棒设置为遥控器。现在,当我git branch时,我得到以下内容:

dev/app/menus
master
usb/dev/app/banner
usb/dev/app/menus

如何访问usb/dev/app/banner

我是否需要先拉或取它?

这是现在的本地还是远程? (即如果我拔出USB记忆棒,我可以合并该代码)。

2 个答案:

答案 0 :(得分:1)

您可以像访问任何其他分支一样访问它。

git checkout usb/dev/app/banner

默认情况下,git branch不会显示任何远程分支。如果您只想查看远程分支,则必须在命令中添加-r标志。

答案 1 :(得分:0)

usb/dev/app/banner是本地的,即使您没有连接到遥控器(您的USB记忆棒在其他地方)也可以在其上运行通常的checkout

为了使本地分支usb/dev/app/banner与USB记忆棒上的内容保持同步,请使用fetch

git fetch usb dev/app/banner

这将从您的远程usb,分支dev/app/banner获取最新提交,并通过本地usb/dev/app/bannerFETCH_HEAD访问这些提交。您可以拔下USB记忆棒,提交就在这里。您可以在任意位置合并usb/dev/app/banner


其他信息:

如果您想从遥控器获取最新的提交并继续在那里工作,我建议您创建一个本地分支:

git fetch usb dev/app/banner
git checkout FETCH_HEAD
git checkout -b dev/app/banner

usb/dev/app/banner(远程分支)中工作是没有意义的,你应该让它反映远程状态,而是在本地dev/app/banner工作。我不确定是否可以提交usb/dev/app/banner

获取远程分支,将其检出并从中创建本地分支是一种相当常见的情况(上面的三个命令),因此有一个简短的版本:

git fetch usb dev/app/banner:<local_branch_name>

我通常使用与<local_branch_name>相同的名称,就像在远程仓库中一样,所以我在本地拥有:

  • usb/dev/app/banner:远程分支,是USB记忆棒的镜像,
  • dev/app/banner:我提交的本地分支。

当你准备好在dev/app/banner发布提交时,你就可以推送到你的USB记忆棒:

git push usb dev/app/banner

(首先,您需要获取可能在USB记忆棒上的最新更改,但尚未在您的本地仓库中进行更新)