Git 리포지토리의 원격 목록?


542

Git 저장소가 있습니다. 이 저장소에는 여러 개의 원격 저장소가 있습니다 (제 생각에는). 해당 리포지토리에 속하는 원격 리포지토리 목록을 어떻게 얻을 수 있습니까?

좋아 git list --remotes하거나 그런거?

답변:


750

명령을 사용하여 구성된 원격 URL 목록을 얻을 수 있습니다 git remote -v.

이것은 당신에게 다음과 같은 것을 줄 것입니다 :

base    /home/***/htdocs/base (fetch)
base    /home/***/htdocs/base (push)
origin  git@bitbucket.org:*** (fetch)
origin  git@bitbucket.org:*** (push)

18
git remote -v왜냐하면 -v는 장황하기 때문입니다. git remote간단한 리모콘 목록 (이 경우 기본, 원점)을 제공합니다. -v 옵션은 각 원격의 페치 및 푸시 조작에 대한 URL을 포함합니다.
dhj

2
나는 자식 지점 --list이 있다면, 그것은 원격 --list 자식이어야 @AlexMills에 동의해야
jimmyb

1
-v"verbose"는 실제로 가장 일반적인 옵션입니다. 에서 지원합니다 git branch. 기본적인 차이점은 짧은 옵션과 긴 옵션 (단일 대 이중 대시)입니다. remote하위 명령으로 --list를 지원하는 것이 좋습니다. 정말로 원한다면 기능 요청을 제출하십시오.
랜달

4
이를 위해서는 이미 클론이 있어야합니다. 알아낼 때, 무엇을 복제 하기 위해 무엇을 복제해야하는지 ...
Mikhail T.

60

원격 저장소의 이름 만 필요하고 다른 데이터는 필요하지 않으면 간단 git remote합니다.

$ git remote
iqandreas
octopress
origin

32

FWIW, 나는 똑같은 질문을했지만 여기서 대답을 찾을 수 없었습니다. 아마도 휴대용은 아니지만 적어도 gitolite의 경우 다음을 실행하여 원하는 것을 얻을 수 있습니다.

$ ssh git@git.xxx.com info
hello akim, this is gitolite 2.3-1 (Debian) running on git 1.7.10.4
the gitolite config gives you the following access:
     R   W     android
     R   W     bistro
     R   W     checkpn
...

24

지금까지의 답변은 기존 지점을 찾는 방법을 알려줍니다.

git branch -r

또는 동일한 프로젝트의 리포지토리 [아래 참고 참조] :

git remote -v

또 다른 경우가 있습니다. 동일한 서버에서 호스팅되는 다른 프로젝트 저장소에 대해 알고 싶을 수 있습니다.

이 정보를 찾기 위해 SSH 또는 PuTTY 를 사용 하여 호스트에 로그인 ls하고 다른 리포지토리가 포함 된 디렉토리를 찾습니다. 예를 들어, 다음을 입력하여 저장소를 복제 한 경우 :

git clone ssh://git.mycompany.com/git/ABCProject

사용 가능한 다른 것을 알고 싶다면 SSH 또는 PuTTY를 통해 git.mycompany.com에 로그인하고 다음을 입력하십시오.

ls /git

가정하면 ls:

 ABCProject DEFProject

나는 명령을 사용할 수 있습니다

 git clone ssh://git.mycompany.com/git/DEFProject

다른 프로젝트에 액세스 할 수 있습니다.

참고 : 일반적으로 프로젝트를 복제 한 저장소 git remote에 대해 간단히 알려줍니다 origin. git remote동일한 프로젝트에서 작업하는 두 명 이상의 사람들과 협력하고 모든 것을 원점으로 전달하는 대신 서로의 저장소에 직접 액세스하는 경우 편리합니다.


2
이것은 브랜치보다는 리포지토리에 대해 말하고 현재 체크 아웃 된 리포지토리에없는 리포지토리를 나열하는 방법을 설명하기 때문에 더 나은 대답입니다.
Edward Ross

16

원격 브랜치를 보는 간단한 방법은 다음과 같습니다.

git branch -r

현지 지점을 보려면

git branch -l

15
이것은 원격 지사를위한 것입니다. 사용자가 원격 저장소를 요청했습니다 .
Owen Blacker

4
git ls-remote업스트림 서버에서 가져올 수있는 모든 원격 장치 ( git-scm.com/docs/git-ls-remote ) 가 표시되어야합니다 . 이 페이지의 모든 답변은 이미 가져온 리모컨과 추적 분기를 나열하는 방법 (Catch-22) 만 알려줍니다. 업스트림 서버에서 참조하는 방법을 알기 전까지는 원격을 가져올 수 없습니다.
Reb. Cabin

0

이러한 방법 중 어느 것도 질문자가 요구하는 방식으로 작동하지 않으며 필자가 자주 필요했던 방법도 없습니다. 예 :

$ git remote
fatal: Not a git repository (or any of the parent directories): .git
$ git remote user@bserver
fatal: Not a git repository (or any of the parent directories): .git
$ git remote user@server:/home/user
fatal: Not a git repository (or any of the parent directories): .git
$ git ls-remote
fatal: No remote configured to list refs from.
$ git ls-remote user@server:/home/user
fatal: '/home/user' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

이 작업의 핵심은 원격 사용자 및 서버를 제외한 정보가 없으며 액세스 권한이있는 항목을 찾으려는 것입니다.

대부분의 답변은 git 작업 세트 내에서 쿼리한다고 가정합니다. 질문자는 당신이 아니라고 가정합니다.

실제 예로 서버에 foo.git 저장소가 있다고 가정하십시오. 그들의 지혜로 누군가 그것을 foo2.git로 바꿔야한다고 결정합니다. 서버에서 git 디렉토리 목록을 작성하는 것이 좋습니다. 그리고 그렇습니다 .git의 문제가 있습니다. 그래도 여전히 좋을 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.