로컬 Git 저장소가 원래 복제 된 URL을 어떻게 확인할 수 있습니까?


Answers

스크립팅 목적으로이 스크립트를 원한다면 다음과 같이 URL 만 가져올 수 있습니다.

git config --get remote.origin.url
Question

며칠 전 GitHub에서 프로젝트를 가져 왔습니다. 나는 GitHub에 몇 가지 포크가 있다는 것을 발견했으며, 나는 원래 가지고있는 것을주의하지 않았다. 내가 뽑은 포크를 어떻게 확인할 수 있습니까?




git 명령에 대한 모든 매개 변수를 기억할 수 없기 때문에 ~ / .gitconfig에 별칭을 추가하면 더 기억에 남을 수 있으므로 입력이 줄어 듭니다.

[alias]
url = ls-remote --get-url

터미널을 다시로드 한 다음 입력하면됩니다.

> git url

다음은 자주 사용하는 몇 가지 예입니다.

[alias]
cd = checkout
ls = branch
lsr = branch --remote
lst = describe --tags



요약하면 최소한 네 가지가 있습니다.

(다음은 공식 Linux 저장소에서 시도한 것입니다.)

최소 정보 :

$ git config --get remote.origin.url
https://github.com/torvalds/linux.git

$ git ls-remote --get-url
https://github.com/torvalds/linux.git

추가 정보 :

$ git remote -v
origin    https://github.com/torvalds/linux.git (fetch)
origin    https://github.com/torvalds/linux.git (push)

더 많은 정보 :

$ git remote show origin
* remote origin
  Fetch URL: https://github.com/torvalds/linux.git
  Push  URL: https://github.com/torvalds/linux.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git push':
    master pushes to master (up to date)



나는 그것을 조작하지 않으면 .git/configremote["origin"] 아래에서 찾을 수 있다고 생각한다.




답을 얻으려면 :

git ls-remote --get-url [REMOTE]

이것은 config를 읽는 것보다 낫습니다. git-ls-remoteman 페이지를 참조하십시오 :

--get-url

"url.<base>.insteadOf" 구성 설정 ( git-config(1) 참조)을 고려하여 주어진 원격 저장소의 URL을 확장하고 원격지와 대화하지 않고 종료하십시오.

@ Jefromi가 지적한 것처럼이 옵션은 v1.7.5 에 추가되었으며 v1.7.5 까지 문서화되지 v1.7.12.2 .




git remote show origin으로 프로젝트 디렉터리에 있어야합니다. 그러나 다른 곳에서 URL을 결정하려면

cat <path2project>/.git/config | grep url

이 명령이 자주 필요할 경우 MacOS에서 .bashrc 또는 .bash_profile 별칭을 정의 할 수 있습니다.

alias giturl='cat ./.git/config | grep url'

따라서 단순히 URL을 얻으려면 git 루트 폴더에서 giturl 을 호출 giturl 됩니다.

편집하다:

이 별칭을 다음과 같이 확장하면

alias giturl='cat .git/config | grep -i url | cut -d'=' -f 2'

이전 URL이없는 일반 URL 만 가져옵니다.

"url ="

...에서

url = http://example.com/repo.git

당신은 그것의 사용법에있는 가능성을 더 얻는다 :

Mac에서는 open $(giturl) 을 호출하여 표준 브라우저에서 URL을 열 수 있습니다.

또는 Linux에서 Chrome 브라우저를 사용하여 chrome $(giturl) 을 엽니 다.




origin 의 IP 주소 / 호스트 이름을 얻으려면

ssh:// 리포지토리의 경우 :

git ls-remote --get-url origin | cut -f 2 -d @ | cut -f 1 -d "/"

git:// 리포지토리 (repository) :

git ls-remote --get-url origin | cut -f 2 -d @ | cut -f 1 -d ":"



기본적으로 다음을 사용합니다.

git remote get-url origin

Windows에서 git bash 명령 콘솔 또는 cmd 명령 콘솔에서 작동합니다. 그것은 Git 버전 2.x에서 작동한다고 말했다.




임의로 명명 된 원격 가져 오기 URL 인쇄 :

git remote -v | grep fetch | awk '{print $2}'