Nützliche Kniffe für git

Tipps und Tricks

SSL Zertifikatsproblem

fatal: unable to access 'https://<gitserver>/<user>/<repo>.git/': SSL certificate problem: self signed certificate in certificate chain

SSL-Fehler ignorieren:

git config http:sslVerify false

SSL-Zertifikate in git einbinden:

http.sslCAInfo

http.sslCert

http.sslKey

SSL-Zertifikate systemweit bekannt manchen

Zertifikate herunterladen, entpacken und in das Verzeichnis /etc/pki/trust/anchors/ verschieben.
Unter SUSE

update-ca-certificates

ausführen.

Fertig

Quellen

http://stackoverflow.com/questions/11621768/how-can-i-make-git-accept-a-self-signed-certificate

http://stefan.ploing.de/2011-05-27-git-zugriff-https-und-client-zertifikaten/

Git hinter einem Proxy

Einmalig

git --config http.proxy="http(s)://<username>:<passord>@<proxy>:<Port>/" clone <git-url>

Alle Informationen werden dann in das verzeichnis .git/config übernommen.

Global definiert

git config --global http.proxy "<user>:<password>@<Proxy>:<Port>"

Lokal definiert

git config http.proxy "<user>:<password>@<Proxy>:<Port>"

Sollte hier noch ein SSL-Problem bestehen, kann man mit –config http.sslverfy=„false“ die SSL-Verschlüsselung „umgehen“.

Git per SSH-Key

Damit git nur einen bestimmten SSH-Schlüssel zur Authentifzierung nutzt, kann man ab git v2.10 das SSH-Kommando definieren

git config [--global] core.sshCommand "ssh -i ~/.ssh/id_ed25519 -F /dev/null"

Für git < v2.10 ist der folgende Workaround sinnvoll

In der Datei ~/.ssh/config die folgende Zeile einfügen

host github.com
HostName github.com
IdentityFile ~/.ssh/id_rsa_github
User git

Quellen

https://superuser.com/questions/232373/how-to-tell-git-which-private-key-to-use

Zeilenende

core.autocrlf

Quellen

https://help.github.com/articles/dealing-with-line-endings/

Automatischer Login

in der Datei .git/config muss nur die url folgendermaßen umgestellt werden:

url = http://<user>:<password>@<git-server>/<git-repo>