SSH 프로토콜을 통해 Github Gist를 복제하는 방법은 무엇입니까?
Github는 실제로 Gist를 사용하기 위해 HTTPS 프로토콜을 사용하기를 원하는 것 같습니다. 예를 들어 Gist 페이지에 HTTPS URL 만 나열합니다 (예 : https://gist.github.com/donatello/5834862).
SSH 프로토콜을 사용하여 Gist를 복제 할 수 있습니까?
예, 가능합니다 :
git clone git@github.com:5834862.git
물론 자신의 Gist ID로 바꾸십시오.
https://help.github.com/articles/which-remote-url-should-i-use#ssh-readwrite---gitgithubspanspancom
git @ .....은 ssh 프로토콜입니다.
요점에 대한 복제 URL을 복사하면 https 복제 URL이 표시됩니다.
https://gist.github.com/5834862.git
변경 https://
에 git@
와 /****.git
에:****.git
그래서이 경우에는
git clone git@gist.github.com:5834862.git
요점 페이지의 드롭 다운에는 이제 Embed / Share / Clone HTTPS / Clone SSH 옵션이 있습니다.
이것은 명백하지 않은 트릭이 사용자 이름을 생략하고 있음을 보여줍니다 .
HTTPS 복제 : 사용자 이름 유무에
https://gist.github.com/b6f4a53fac485f75afb9150d03efb2f6.git
관계없이 나를 위해 작동합니다.git
.https://gist.github.com/cben/b6f4a53fac485f75afb9150d03efb2f6
(일반적으로 github에서와 같이 표준 브라우징 URL은 git에서도 작동합니다)SSH 복제 :
git@gist.github.com:b6f4a53fac485f75afb9150d03efb2f6.git
AKA는를 사용하거나 사용하지 않고 나를 위해 작동 하지만 사용자 이름으로는 작동하지 않습니다.
ssh://git@gist.github.com/b6f4a53fac485f75afb9150d03efb2f6.git
.git
HTTPS를 괴롭히는 github 2FA를 활성화했기 때문에 항상 SSH를 원합니다. 다음 ~/.gitconfig
은 푸시의 모든 요점에 대한 번역을 수행합니다.
[url "ssh://git@gist.github.com/"]
# In case I just copy-pasted with username:
# [only works for my (cben) gists, but those are the ones I can push]
pushInsteadOf = https://gist.github.com/cben/
# For gists cloned with official no-username URL:
pushInsteadOf = https://gist.github.com/
일반 (요지가 아닌) 저장소의 경우 :
[url "ssh://git@github.com/"]
pushInsteadOf = https://github.com/
[url "ssh://git@bitbucket.org/"]
pushInsteadOf = https://bitbucket.org/
[url "ssh://git@gitlab.com/"]
pushInsteadOf = https://gitlab.com/
PS는 디버그 insteadOf
및 pushInsteadOf
구성에 대한 편리한 쉬운 방법 이 실행 git remote -v
되며 가져 오기 / 푸시가 사용할 효과적인 URL을 보여줍니다.
원하는 경우이 스크립트를 가져 와서 $PATH
. 완료되면 다음을 수행 할 수 있습니다.
- Clone any gist from
gist.github.com
usingHTTPS
(or if you have an already cloned gist, just proceed to the next step) - Anywhere in the gist's git directory tree, run the command
git-change-url --to-ssh
Now, provided that your public key is uploaded to your github account (it should be listed here) you should be able to work with the gist via SSH
, without having to enter your github credentials.
Much less error-prone than editing git config files by hand.
Ps: If you find any bugs in the script, or have any additions to make, feel free to fork :D
Change https://
to ssh://git@
should do the trick, that is, change
https://gist.github.com/donatello/5834862
to
ssh://git@gist.github.com/donatello/5834862
so git clone ssh://git@gist.github.com/...
should clone the project (if you have already added SSH key on Github)
In my personal opinion, the official document is unclear about SSH.
작동하려면 해시 / 숫자 만 남겨두고 경로에서 사용자 이름을 제거해야합니다.
가능합니다, 이것을 시도하십시오 :
git clone git@YOURSSHHOST:YOURGISTIDHERE.git
참고 URL : https://stackoverflow.com/questions/18019142/how-to-clone-a-github-gist-via-ssh-protocol
'development' 카테고리의 다른 글
Android HttpURLConnection을 사용하여 HTTP 가져 오기 (0) | 2020.12.11 |
---|---|
크롬이 디버그 모드로 들어가는 것을 막는 방법? (0) | 2020.12.11 |
Java를 사용하여 Selenium WebDriver로 브라우저 로그 캡처 (0) | 2020.12.11 |
Angular2, 앵커 요소를 비활성화하는 올바른 방법은 무엇입니까? (0) | 2020.12.11 |
문자열을 단어와 구두점으로 나누기 (0) | 2020.12.11 |