Obecnie, gdy tworzę nowe repozytorium w GitHub na stronie konfiguracji, otrzymuję:
git remote add origin https://github.com/nikhilbhardwaj/abc.git
git push -u origin master
I za każdym razem, gdy muszę wcisnąć zatwierdzenie, muszę wprowadzić nazwę użytkownika i hasło do GitHub.
Mogę to ręcznie zmienić na
[email protected]:nikhilbhardwaj/abc.git
w .git/config
. Uważam to za dość irytujące - czy jest jakiś sposób, aby skonfigurować git do domyślnego używania SSH?
insteadOf
Sztuką jest już od co najmniej 2012. Zobacz także Jak przekonwertowaćgit:
URL dohttp:
adresów URL .Odpowiedzi:
Ustaw gałąź początkową repozytorium na SSH
Strona konfiguracji repozytorium GitHub to tylko sugerowana lista poleceń (a GitHub sugeruje teraz użycie protokołu HTTPS). O ile nie masz dostępu administracyjnego do witryny GitHub, nie znam żadnego sposobu zmiany sugerowanych poleceń.
Jeśli wolisz używać protokołu SSH, po prostu dodaj taką gałąź zdalną (tj. Użyj tego polecenia zamiast polecenia sugerowanego przez GitHub). Aby zmodyfikować istniejący oddział, zobacz następną sekcję.
Zmodyfikuj istniejące repozytorium
Jak już wiesz, aby przełączyć istniejące repozytorium na SSH zamiast HTTPS, możesz zmienić zdalny adres URL w swoim
.git/config
pliku.Skrótem jest użycie
set-url
polecenia:Więcej informacji o przełączniku SSH-HTTPS
źródło
set-url
pomóżcie mi! Wielkie dzięki !GitHub
BitBucket
To mówi gitowi, aby zawsze używał SSH zamiast HTTPS podczas łączenia się z GitHub / BitBucket, więc domyślnie uwierzytelnisz się za pomocą certyfikatu, zamiast monitować o hasło.
źródło
url.<base>.insteadOf
.git config --global [email protected]:.insteadOf https://github.com/
działa na pewno w git 2.7.4.)--global
i zrobienie tego na zasadzie pr repo.Odpowiedź udzielana przez Trevor jest poprawna .
Ale oto, co możesz bezpośrednio dodać w swoim
.gitconfig
:źródło
[url "ssh://[email protected]/"]
insteadOf = https://gitlab.com/
Istnieje równieżpushInsteadOf
możliwość wpływania na wypychany adres URL, ale nie pobierania. Może służyćgit remote -v
do sprawdzania skutecznych adresów URL, których użyje git.Możliwe, że przypadkowo sklonowałeś repozytorium w https zamiast ssh. Popełniłem ten błąd wiele razy na github. Upewnij się, że skopiujesz link ssh w pierwszej kolejności podczas klonowania, zamiast linku https.
źródło
Musisz sklonować w ssh, a nie w https.
W tym celu musisz ustawić klucze ssh. Przygotowałem ten mały skrypt, który automatyzuje to:
i uruchom to jak
Zmień swój zdalny adres URL
Dodaj treść
~/.ssh/github.com_rsa.pub
do swoich kluczy ssh na github.comSprawdź połączenie
źródło
Plik SSH
Edytuj reponame / .git / config
źródło