Igår var en ganska programmeringsdag och en konflikt med gitförvaret ledde mig till hemantförvar där jag fick en komplett lista med mer än 400 kommandon till GitHub/Git som anses vara de mest använda, åtföljs var och en av en förklaring av deras användning. Om du inte har någon aning om vad det är GitHub eller om du bara hade problem med att installera det kan du gå till Snabbguide för att använda GitHub det kommer säkert att ta bort alla dina tvivel.
Git-hjälp för daglig användning, mindre än 20 kommandon för att använda git dagligen.
gå hjälpa dagliga
Visa Git Hjälpguide
gå hjälpa -g
Skriv över drag
git hämta - allt && git reset - hårt ursprung / master
Lista över alla filer upp till ett engagemang
git ls-tree - endast namn -r <förbinda sig>
Uppdatera referensen till den första förpliktelsen
git update -ref -d HEAD
Lista över alla filer i konflikt
git diff - endast namn - diff-filter = U
Lista över alla filer som ändrats i commit
git diff-tree --no-commit-id - name-only -r <förbinda sig>
Se de ändringar du har gjort sedan senaste förpliktelsen
git diff
Jämför dina förberedda ändringar med ditt senaste åtagande
git diff -cachad
Visar skillnaden mellan loggade och oinspelade ändringar
git diff HEAD
Lista alla grenar som redan har slagits samman med din mästare
git gren - sammanslagna mästare
Byt snabbt till föregående gren
git kassan -
Ta bort grenarna som redan har slagits samman med mastern
git gren - sammanslagna mästare | grep -v '^ \ *' | xargs -n 1 git gren -d
Lista alla grenar och deras sista åtaganden med filialen
git gren -vv
Spåra filialen
git gren -u ursprung / mybranch
Ta bort en lokal filial
git gren -d <lokal_filialnamn>
Ta bort en avlägsen gren
git push-ursprung - radera <fjärran_grennamn>
Ångra lokala ändringar med det senaste innehållet i huvudet
git checkout - <filnamn>
Återställ ett engagemang genom att skapa ett nytt engagemang
git återgå <förbinda sig>
Kassera ett åtagande, det rekommenderas endast i privata filialer
git återställning <förbinda sig>
Ändra det tidigare meddelandet
git commit -v --ändra
Ändra författaren
git commit --amend --author ='Författarens namn'
Återställ författaren efter att författaren har ändrats i globala inställningar
git commit --amend --reset-author-ingen redigering
Ändra fjärr-URL
git fjärrinställnings-url-ursprung <URL>
Hämtar en lista över alla fjärrreferenser
git fjärrkontroll
alternativ:
git fjärrshow
Få en lista över alla lokala och avlägsna filialer
git gren -a
Få en lista över avlägsna grenar
git gren -r
Lägg till de ändrade delarna av en fil istället för hela filen
git add -p
Hitta slutförda försök
curl http://git.io/vfhol > ~/.git-completion.bash && missar '[-f ~ / .git-complete.bash] &&. ~ / .git-complet.bash' >> ~/.bashrc
Visar ändringarna under de senaste två veckorna
git log --no-merges --raw --since ='2 veckor sedan'
alternativ:
git whatchanged - sedan ='2 veckor sedan'
Visa alla åtaganden från mastergafflarna
git log --no-merges --stat --reverse master ..
Välja åtaganden över grenar med körsbärsplockning
git kassan <filialnamn> && git cherry pick <förbinda sig>
Hitta grenarna som innehåller kommunicera hash
git branch -a - innehåller <förbinda sig>
alternativ:
git gren - innehåller <förbinda sig>
Git alias
gitconfig --global alias.<hantera> <kommando>
gitconfig --global alias.st-status
Spara snabbt (provisoriskt) det utförda arbetet
git stash
alternativ:
git stash spara
Stasheado av alla filer, även de som inte är förberedda.
git stash spara -u
alternativ:
git stash spara --include-untracked
Visa lista över alla stasheado-filer
git stash-lista
Använd någon iscensatt förändring utan att radera den från den iscensatta listan
git stash gäller <stash @ {n}>
Tillämpa de iscensatta ändringarna på nytt och ta bort dem från den iscensatta listan
git stash pop
alternativ:
git stash applicera stash @ {0} && git stash drop stash @ {0}
Ta bort alla lagrade stashes
git stash klart
alternativ:
git stash droppe <stash @ {n}>
Ta en specifik fil som har lagrats
git kassan <stash @ {n}> -- <sökväg>
alternativ:
git checkout stash @ {0} - <sökväg>
Visa alla förberedda filer
git ls-filer -t
Visa alla filer som inte har förberetts
git ls-filer - andra
Visa alla ignorerade filer
git ls-filer - andra -i --exclude-standard
Skapa ett nytt arkivträd (git 2.5)
git -arbetsblad tillägg -b <filialnamn> <bana> <startpunkt>
Skapa ett nytt fungerande träd från ett HEAD
git worktree add --detach <bana> HUVUD
Ta bort en fil från git-arkivet utan att ta bort den från den lokala databasen
git rm -cachad <sökväg>
alternativ:
git rm -cachad -r <katalogväg>
Innan du tar bort råfiler, ta en testkörning för att få en lista över dessa filer.
git ren -n
Tvinga bort radering av oförberedda filer
git clean -f
Tvinga bort bort oförberedda kataloger
git clean -f -d
alternativ:
git ren -dF
Uppdatera alla undermoduler
git submodul för varje git pull
Visar alla ändringar i den aktuella grenen som inte har slagits samman med mastern
git cherry -v mästare
alternativ:
git cherry -v mästare <gren som ska slås samman>
Byt namn på en gren
git gren -m <nytt filialnamn>
alternativ:
git gren -m [<gammal gren-namn>] <nytt filialnamn>
Uppdatera "funktion" och gör sammanslagna "master"
git checkout-funktionen && git rebase @ {- 1} && git checkout @ {- 2} && git merge @ {- 1}
Arkivera huvudgrenen
git arkivmästare --format = zip --output = master.zip
Ändra föregående åtagande utan att ändra rapportmeddelandet
git add --all && git commit --amend --no-edit
Ta bort avlägsna grenar som inte längre finns i sitt ursprung
git hämta -p
alternativ:
git fjärrkontroll beskär ursprung
Hämta kommissionens hash från den ursprungliga versionen
git rev-list - omvänd HEAD | huvud -1
Visa versionsträdet
git log --pretty = oneline --graph --decorate --all
alternativ:
gitk - allt
Lägg till ett projekt i ett arkiv med hjälp av hive
git subtree add --prefix =<katalognamn>/<Projektnamn> --quash git@github.com:<Användarnamn>/<Projektnamn>.gitmaster
Få de senaste ändringarna från ditt arkiv för ett länkat projekt med hjälp av subtree
git subtree pull --prefix =<katalognamn>/<Projektnamn> --quash git@github.com:<Användarnamn>/<Projektnamn>.gitmaster
Exportera en filial och dess historik till en fil
git bunt skapa <fil> <filialnamn>
Importera från ett paket
git klon repo.bundle <repo-dir> -b <filialnamn>
Får namnet på den aktuella filialen
git rev-parse --abbrev-ref HEAD
Ignorera en fil som redan har begåtts (t.ex. Changelog).
git update-index-antag-oförändrad ändringslogg; git commit -a; git update-index --no-anta-oförändrad Changelog
Stashea ändras innan omläggning
git rebase --autostash
Sök efter id i lokalfilial
git hämta ursprung pull /<id>/ huvud:<filialnamn>
alternativ:
git pull origin pull /<id>/ huvud:<filialnamn>
Visar de senaste taggarna för den aktuella grenen
git beskriv - taggar --abbrev = 0
Leta efter skillnader.
git diff-word-diff
Ignorera ändringar i spårningsfilen
git update-index-antag-oförändrat <filnamn>
ångra
git update-index --no-anta-oförändrad <filnamn>
Rensa filer från .gitignore
.
git clean -X -f
Återställ raderad fil.
git kassan <radera_förpliktelse>^ - <sökväg>
Återställ filer med en specifik commit-hash
git kassan <förbinda sig> -- <sökväg>
Ordna alltid om istället för att slå ihop
git config -global branch.autosetuprebase alltid
Lista alla alias och inställningar
git config - list
Gör skiftlägeskänsligt
git config -global core.ignorecase falsk
Typer av autokorrigering.
gitconfig --global hjälpa.autokorrekt 1
Kontrollerar om ändringen är en del av en release.
git name-rev - endast namn <SHA-1>
Rengör torrkörning.
git clean -fd --dry -run
Markera åtagandet som en lösning på det tidigare åtagandet
git commit -fixering <SHA-1>
Korrigering av squash
git rebase -i --autosquash
Hoppa över stagingområdet under kommittén.
git commit -am <begå meddelande>
Lista de ignorerade filerna
git check-ignorera *
Status för ignorerade filer
git -status -signerad
Begår i Branch1 som inte finns i Branch2
git log Branch1 ^ Branch2
spara och återanvänd tidigare konfliktlösningar
git config --global reference.enabled 1
Öppna alla motstridiga filer i en Editor.
git diff - endast namn | unik | xargs $ REDAKTÖR
Räkna antalet oförberedda objekt och deras konsumtion på disken.
git count-objects - mänskligt läsbart
Underhåll av oåtkomliga föremål
git gc - beskära = nu - aggressiv
Visa ditt förvar direkt på gitweb.
git instaweb [--local] [--httpd=<httpd>] [--port=<port>] [--webbläsare=<webbläsare>]
Visa GPG-signaturer i bekräftelsesloggen
git log --show-signatur
Tar bort poster från globala inställningar.
git config --global --unset <postnamn>
Få en ny filial utan historik
git checkout - orphan <filialnamn>
Visar skillnaden mellan produktionsfilen och den senaste versionen av filen.
git diff - iscensatt
Extrahera en fil från en annan gren.
git show <filialnamn>:<filnamn>
Lista bara roten och bekräfta sammanslagningen
git log - första förälder
Sammanfoga mellan två åtaganden
git rebase - interaktiv HEAD ~ 2
Lista alla grenar
git checkout mästare && git-gren - ingen sammanslagning
Hitta med binär sökning
git bisect start git bisect dåligt git bisect bra v2.6.13-rc2 git bisect dåligt git bisect bra git bisect reset
Lista åtaganden och ändringar för en specifik fil
git log --följ -p - <sökväg>
Klona en enda gren
git klon -b <filialnamn> - enda filial https://github.com/user/repo.git
Skapa och byt till en ny filial
git kassan -b <filialnamn>
Ignorera filer som har ändringar i åtaganden
git config core.fileMode falsk
Utmärkt sammanställning av kommandon 😉
Utmärkt bidrag !!