如何从远程git repo获取所有远程URL?

时间:2014-02-18 12:20:52

标签: git git-clone git-remote

例如,让我们有一个git存储库A,它有两个遥控器:

user@user:~/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)

我想克隆这个存储库并获得相同的遥控器,但只有源:

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

有没有办法从原点获取所有遥控器,所以 remote_a remote_b 也是 some_clone 的遥控器?

1 个答案:

答案 0 :(得分:3)

git可用的协议(用于克隆,获取更新等)并没有提供所需的信息,因此从某种意义上说答案是否定的:没有办法实现这一点。

但是,对于您的具体示例,您正在克隆的存储库已经是本地存储库。你显然可以直接访问它。您所要做的就是转到它并使用git config(或类似的)提取所需的所有信息,然后将其复制到新的克隆。

这同样适用于您从“远方”某处克隆的存储库:您需要对其进行某种其他类型的访问(例如,ssh-log-in-host machine的能力)以获取所需的配置信息