512 Stimmen

Klonen eines privaten Repositorys (Github)

Ich habe ein privates Repository auf Github für ein Projekt, an dem ich gerade arbeite. Bis jetzt habe ich nur auf meinem heimischen Desktop gearbeitet, aber ich habe gerade einen Laptop gekauft und versuche, es so einzurichten, dass ich von beiden Computern aus an dem Projekt arbeiten und Änderungen pushen/ziehen kann.

Ich habe einen neuen SSH-Schlüssel zu meinem Github-Konto für den Laptop hinzugefügt und konnte ein öffentliches Test-Repository, das ich eingerichtet hatte, klonen und Änderungen daran vornehmen. Allerdings konnte ich das private Repository nicht klonen. Gibt es irgendetwas Besonderes, das ich in der Befehlszeile tun muss, um ein privates Repository zu klonen? Muss ich ein neues GitHub-Konto für meinen Laptop einrichten und mich selbst als Mitarbeiter einrichten?

Der von mir verwendete Befehl lautete git clone git://github.com/username/reponame.git

11voto

cnash Punkte 469

Ich brauchte eine nicht-interaktive Methode zum Klonen eines privaten Repos.

Inspiriert durch diese Ausgabe: https://github.com/github/hub/issues/1644

Schritt 1.

Erstellen Sie ein persönliches Zugangstoken in den Github-Entwicklereinstellungen: https://github.com/settings/tokens

Schritt 2.

git clone https://$token:x-oauth-basic@github.com/$username/$repo.git

10voto

oneworld Punkte 739

Ich habe ein (privates) Firmenkonto und die 2-Faktor-Authentifizierung ist aktiviert, also musste ich ein paar Beiträge kombinieren, damit es wie unten beschrieben funktioniert. (Ich schreibe es auf, damit es für jemanden mit der gleichen Situation nützlich sein kann)

Initially it was the Fatal Error. 
fatal: repository 'https:
...
remote: Repository not found.
fatal: repository 'https:

Installieren Sie den Credential Manager und aktualisieren Sie GIT wie hier beschrieben: https://codeshare.co.uk/blog/how-to-solve-the-github-error-fatal-httprequestexception-encountered/

Dies löste das Problem nicht, da sich das Problem nach unten verlagerte, als ich versuchte, den Befehl clone wie folgt zu verwenden:

$ git clone https://<username>:<password>@github.com/<ORG_NAME>/<PROJECT-NAME>.git

remote: Invalid username or password.
fatal: Authentication failed for 'https://

Mein Passwort hatte ein $-Symbol enthalten und aus irgendeinem Grund mochte GIT command line / GIT Bash es nicht. Ich kann dies auf den Fehler zurückgegebenen Text sehen nicht das $-Symbol in ihm haben.

fatal: Authentication failed for 'https://<username>:<password-missing-$-symbol>@github.com/<ORG_NAME>/<PROJECT-NAME>.git'

Ich musste auf diese Website verweisen: https://git-scm.com/book/en/v2/Git-Tools-Credential-Storage

Bitte beachten Sie: Wenn ein falsches Passwort gespeichert ist Windows Credential Manager wird sie das Problem noch verschärfen. I habe die auf diese Weise gespeicherten Github-Anmeldeinformationen entfernt, bevor ich zum nächsten Schritt überging.

$ git config --global credential.helper cache
$ git clone https://<username>:<password>@github.com/<ORG_NAME>/<PROJECT-NAME>.git

Jetzt wird der Windows Credential Manager angezeigt. Ich gab meinen Benutzernamen und mein Kennwort in die Textfelder ein (mein Kennwort mit dem $-Symbol wurde akzeptiert) und wurde zur Eingabe eines Codes für die 2-Faktor-Authentifizierung aufgefordert. Ich tippte den Authentifizierungscode von Google Authenticator ein, und der Klon startete einwandfrei.

9voto

ireshika piyumalie Punkte 1886

Beim Klonen von privaten Repos mit aktivierter 2FA gibt es einige einfache Schritte, die Sie befolgen müssen

  1. Gehen Sie zu Ihrem Git-Konto
  2. Gehen Sie zu Einstellungen-> Entwicklereinstellungen->Persönliches Zugriffstoken
  3. Klicken Sie auf Neues Token generieren
  4. Erstellen Sie ein Token mit dem gewünschten Titel und den gewünschten Funktionalitäten
  5. Wenn Sie das private Projektarchiv mit git clone repoName klonen, geben Sie nach der Eingabe Ihres Benutzernamens ein persönliches Zugriffstoken als Passwort an.

Führen Sie dieselben Schritte aus, wenn Sie die Fehlermeldung Authentifizierung fehlgeschlagen für Private Repo erhalten

6voto

MK Yung Punkte 4066

Als Antwort auf macs Antwort können Sie Ihre SSH-Klon-URL auf Ihrer Github-Repo-Seite abrufen, indem Sie auf SSH en You can clone with HTTPS, SSH, or Subversion. und kopieren Sie die URL.

5voto

Usman Hussain Punkte 177

Das hat bei mir auf dem Mac funktioniert git clone https://username@github.com:username/repo_name

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X