2013-05-27 145 views
5

我在工作中遇到了一个小问题。Git - 浏览远程存储库

我们将所有不同的项目提交到不同的远程存储库,有时人们会因早上4点咖啡因时创建的名称而感到困惑。

所以我的问题是:

有没有办法来浏览远程存储库,列出所有的分支?

任何帮助,非常感谢!

+2

您的问题标题询问“远程存储库”,但您的问题主体询问“远程分支机构”。 “远程分支”只是在本地存储库中名为remote /(whatever)的分支。小心区分这些。像“git log”和“git branch -a”这样的命令只能查看* local * repo;它只有像“git fetch”和“git remote update”这样的命令,它们使用ssh,http,ftp等从* remote * repo中获取东西。 – torek

+1

啊,是的,对不起!我在那里困惑了一会儿。接得好。我想要的是浏览分支机构的远程存储库!我会在一分钟内编辑! – RobinNilsson

回答

3

要只列出远程分支,第一次提取(以确保你有一个本地引用它们全部),则列表其中:

git fetch 
git branch -r 

你不妨,取出后,做一个git remote prune <remotename>(其中<remotename>是名称的远程通常origin),移除所有甲肝远程分支机构过时的本地引用已被删除。

直接“浏览”远程存储库的唯一方法是登录到它所驻留的服务器,并且这样做(或者设置gitweb或类似的)。 Git的核心思想是您的本地副本拥有远程功能。

+0

啊,是的,这就是我要找的。我意识到我必须使用git web界面来获得一些结构!谢谢! (我今天使用了所有的赞扬,但明天会有一个!)。 – RobinNilsson

+0

所以基本上,你和ŁukaszNiemier说我们需要下载一个远程仓库的副本(** git fetch **)来查看它的内容。我希望有一种方法可以在不下载的情况下做到这一点。 –

+0

@EdwardFalk是的,正如我在回答中所说的,Git是关于您的本地副本的完整表示。 –

1

git branch -a将列出所有分支机构,本地和远程跟踪。

+0

对不起,我困惑了一会儿,我完全搞砸了我的问题。我的意思是浏览远程存储库,而不是@torek注意到的本地分支。 – RobinNilsson

+0

谢谢@ hd1,我接受了安德鲁马歇尔的回答。我今天用完了所有的赞誉,但你明天会得到一个! ^^ – RobinNilsson

+0

OTOH,甚至gitblit从一个裸仓库工作,至少在默认情况下 – hd1

0

如果您获取使用git fetch --all那么你可以使用浏览所有远程分支的所有分支:

git branch -a | grep remote