2014-02-18 193 views
1

例如,讓我們有一個Git倉庫A,其中有兩個遙控器:如何從遠程git倉庫獲取所有遠程URL?

[email protected]:~/dev/tmp/some_repo$ git remote -v 
remote_a  /home/user/dev/tmp/a/ (fetch) 
remote_a  /home/user/dev/tmp/a/ (push) 
remote_b  /home/user/dev/tmp/b/ (fetch) 
remote_b  /home/user/dev/tmp/b/ (push) 

我想克隆這個倉庫並獲得相同的遙控器,但只有產地:

[email protected]:~/dev/tmp$ git clone some_repo/ some_clone 
Cloning into 'some_clone'... 
done. 
[email protected]:~/dev/tmp$ cd some_clone/ 
[email protected]:~/dev/tmp/some_clone$ git remote -v 
origin /home/user/dev/tmp/some_repo/ (fetch) 
origin /home/user/dev/tmp/some_repo/ (push) 

有任何方式從原產地獲得所有遙控器,所以remote_aremote_b是遙控器some_clone one?

回答

3

可供git使用的協議(用於克隆,獲取更新等)不會爲您提供所需的信息,因此在某種意義上答案是否定的:沒有辦法獲得該信息。

但是,對於您的具體示例,您正在克隆的存儲庫已經是本地存儲庫。你顯然可以直接訪問它。你所要做的就是回到它並使用git config(或類似)來提取所需的所有信息,然後將其複製到新的克隆中。

這同樣適用於從「遠處」某處「克隆」的存儲庫:您需要對其進行某種其他類型的訪問(例如ssh登錄到主機)以獲取配置信息需要。

+0

我有點困惑。 目前沒有辦法得到這個結果,或者這是由於git協議的限制,將永遠不可能? –

+0

這不是目前的協議。據我所知,無意將其添加到未來的,但是,好吧,[預測...](http://www.larry.denenberg.com/predictions.html):-) – torek