it-source

git: URL을 http: URL로 변환하는 방법

criticalcode 2023. 8. 14. 22:55
반응형

git: URL을 http: URL로 변환하는 방법

저는 http 프록시 뒤에서 일하고 있습니다.저는 안드로이드의 "repo" 도구를 사용하여 소스 트리를 복제하려고 합니다.

이 도구는 다음을 사용해야 합니다.git://URL(비록http://URL도 작동합니다.결과적으로, 저는 소스를 다운로드할 수 없습니다.

강제로 할 수 있습니까?git항상 사용하기 위해http?

편집: 내 http_proxy가 올바르게 구성되었습니다.예를 들어, 다음과 같이 작동합니다.

git clone http://android.git.kernel.org/platform/manifest.git

그러나 그렇지 않습니다(errno=Connection 시간 초과).

git clone git://android.git.kernel.org/platform/manifest.git

그래서대답은 저에게 별로 도움이 되지 않습니다.

다음은 GitHub의 기본 프로토콜을 다시 작성하는 예입니다.

git config --global url.https://github.com/.insteadOf git://github.com/

정확한 값은 사용 중인 프로토콜에 따라 다릅니다.예를 들어 git over ssh에 대한 위의 명령은 다음과 같습니다.

git config --global url.https://github.com/.insteadOf git@github.com:

다음에 대한 Git 설명서:

git config [--global] url.<base>.insteadOf <other_url>

이 값으로 시작하는 모든 URL은 대신 다음으로 시작하도록 다시 작성됩니다.<base>문자열 대신 둘 이상이 지정된 URL과 일치하는 경우 가장 긴 일치 항목이 사용됩니다.

는 이 repo 도구가 Git를 어떻게 사용하는지 모르지만(그리고 만약 당신이 http 프로토콜을 사용하도록 'repo'를 구성할 수 있다면), 당신은 그것을 사용하여 속일 수 있습니다.url.<base>.insteadOf구성 변수(git-configgit-interval manpages 참조).

사용해 보셨습니까?core.gitProxygit 프로토콜을 사용하는 데 문제가 있다면 방화벽을 통과할 수 있습니까?

Git 저장소에서 하위 모듈을 재귀적으로 가져오는 것과 같은 문제가 있었습니다.나는 Git 포트에서 나가는 연결을 허용하지 않는 미친 방화벽 뒤에 있습니다.서브모듈의 일부 서브모듈은 다음과 같이 코드화되었습니다.git://github.com/blah/blah.git이것은 저의 재귀적인 하위 모듈 인구를 죽였습니다.해결 방법은 다음과 같습니다.

git config --global url."https://<GITUSERNAME>@".insteadOf git://

이것은 대체합니다.git://와 함께https://<GITUSERNAME>@모든 하위 모듈 리포지토리 URL에 있습니다.교체해야 합니다.<GITUSERNAME>사용자 고유의 git 사용자 이름으로.또한 참고:--global이 구성을 기본 리포지토리 디렉터리에 추가하는 것만으로는 작동하지 않습니다.

에서 확인할 수 있습니다.~/.gitconfigSSH를 https:// 또는 그 반대로 덮어쓰는 경우.

git 계정의 git 구성 파일(.gitconfig)을 찾고 다음을 수정합니다.

    [user]
    email = your e-mail account


    name = your git account
    [url "git@github.com:"]


    insteadOf = https://github.com/

언급URL : https://stackoverflow.com/questions/1722807/how-to-convert-git-urls-to-http-urls

반응형