3.2 KiB
Git cheat sheet
Checka ut specifik commit
git checkout {{sha}}
Checka ut senaste commit
git checkout master
Byt remote
git remote rm origin
git remote add origin {{URL to repo}}
git push -u origin master
git remote -v
Alternativt
git remote rm origin
git remote add origin {{URL to repo}}
git pull origin master
git branch --set-upstream-to=origin/master
git pull
Förhindra Git push
git remote set-url --push origin no-pushing
Slå ihop flera repon
Merge project-a into project-b:
cd path/to/project-b
git remote add project-a /path/to/project-a
git fetch project-a --tags
git merge --allow-unrelated-histories project-a/master # or whichever branch you want to merge
git remote remove project-a
Pull repository, ignorera och skriv över lokala filer
git fetch --all
git reset --hard
git pull
Återställ lokal arbetskatalog till utcheckad version
git reset --hard
VARNING - Ta bort icke trackade filer. Lägg till parametern "n" för "dry run" för att se vilka filer som kommer att raderas.
git clean -f -d
VARNING - Som ovan men raderar ävan ignorerade filer.
git clean -f -x -d
VARNING - Som ovan men raderar även filer i underkataloger (utan :/ rensas bara aktuell katalog)
git clean -fxd :/
Konfigurera CR/LF
Default för Windows är denna inställning.
git config --global core.autocrlf true
Detta kommer att ersätta från det lokala systemets radbrytning till [LF] när repot checkas in. Om du kopierar filer från externa system till det lokala repot och Git detekterar detta som att filerna ändrats kan du använda detta kommando för att fixa detta.
git add --renormalize .
Andra alternativ:
git config --global core.autocrlf false
git config --global core.eol lf
git config core.eol crlf
Ta bort filer från repository (behåll lokalt)
git rm --cached file_to_remove.txt
Eller för en hel katalog (rekursivt)
git rm --cached -r directory_to_remove
Autentisering
Linux
- Skapa ny SSH nyckel
ssh-keygen -t rsa -b 4096
Alternativt lägg till -C "<user@domain.com>"
-
Lägg till id_rsa.pub som SSH-nyckel för repot
-
Sätt remote repo till git@... istället för https:// ...
-
Gör en pull för att verifiera att allt fungerar
Aktivera credential store
Alternativt aktivera credential.helper store. Observera att detta sparar inloggningsinformation i klartext i ~/.git-credentials
git config --global credential.helper store
Windows
Aktivera Windows Credentials manager
git config --global credential.helper manager
git config --list
Kontrollera användarinformation lagrad i Windows Credentials manager
rundll32.exe keymgr.dll,KRShowKeyMgr