Frage

Ziehen von HTTP-Authentifizierung zu entkommen (so dass ich nicht zu Typ Passwort brauche, wenn ich nicht ssh.keygen verwenden).

Pushing durch ssh mit Authentifizierung.

War es hilfreich?

Lösung

Von der git-config Manpage :

  

remote.<name>.url Die URL eines Fern   Repository. Siehe GIT-Fetch (1) oder   git-Push (1).

     

remote.<name>.pushurl Die Push-URL   eine Remote-Repository. Siehe git-Push (1).

Versuchen Sie, die früher zu einer http: URL und diese zu einem git+ssh: (oder nur git:) URL setzen?

Andere Tipps

Original Antwort, für Push durch ssh in ein 'remote' : dies gilt nur für ein Repo, die aktuelle:

Wenn Sie eine git remote -v haben, die eine https-URL für "origin" zurückgibt, können Sie Folgendes eingeben:

git config remote.origin.pushurl git@github.com:aUser/aRepo

Oder besser gesagt:

git remote set-url --push git@github.com:aUSer/aRepo

Wie bemerkt hier :

  

Es ist nicht funktionell anders, als set-url intern landet nur Config aufrufen. Aber set-url wird sich beschweren, wenn Sie den Befehl Teil „git remote set-url --push“ vertippen, während git Config wird leise vertippt Optionen akzeptieren, aber nicht, um tatsächlich die Fernbedienung des URL gesetzt.

Unter git-Referenz (hier angepasst):

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

$ git remote set-url --push origin git@github.com:schacon/git-reference.git

$ git remote -v
origin  https://github.com/schacon/git-reference.git (fetch)
origin  git@github.com:schacon/git-reference.git (push)

Im Rahmen der Prämie, JWW fügt hinzu:

  

Das möchte ich auf alle github.com anzuwenden und nicht nur meine repos

Dann git remote ist nicht die Antwort.

Nur url.<base>.pushInsteadOf würde gelten für alle repos:

  

Jede URL, die beginnt, mit diesem Wert wird nicht geschoben werden; stattdessen wird es neu geschrieben, mit zu beginnen, und der resultierenden URL zu schieben. I

So:

 git config --global url."git@github.com:".pushInsteadOf https://github.com/
 # or
 git config --global url."ssh://git@github.com/".pushInsteadOf https://github.com/

habe ich erwähnt, dass die Option im Jahr 2014 in „ Git: wie die Öffentlichkeit zu erhalten, read-only git: // URL “.

Die --global Option wird das angewendet machen alle repos, nicht nur die aktuelle.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top