Ahir va ser un dia de bastant programació i un conflicte amb el repositori de git em va portar a l' repositori de hemanth on vaig aconseguir un complet llistat amb més de 400 ordres per la GitHub / Git que són considerats el més utilitzats, cada un d'ells ve acompanyat de l'explicació del seu ús. Si no tens ni idea que és GitHub o simplement fes tingut problema per instal·lar-lo, pots anar a la Guia ràpida per a utilitzar GitHub que segur et traurà tots els dubtes.
Ajuda d'Git per a ús diari, menys de 20 ordres per utilitzar git diàriament.
git ajuda diari
Mostra la guia d'Ajuda d'Git
git ajuda -g
sobreescriure pull
git fetch --all && git reset --hard origin / màster
Llista de tots els fitxers fins a un commit
git ls-tree --name-only -r <commit-ish>
Actualitzar la referència a el primer commit
git update-ref -d HEAD
Llista de tots els arxius en conflicte
git diff --name-only --diff-filter = O
Llista de tots els fitxers canviats en el commit
git diff-tree --no-commit-id --name-only -r <commit-ish>
Veure els canvis que has fet des de l'últim commit
git diff
Compara els teus canvis preparats amb el teu últim commit
git diff --cached
Mostra la diferència entre els canvis registrats i no registrats
git diff HEAD
Llista tots els branches que ja han fet merged amb el teu màster
git branch --merged màster
Canvia ràpidament a l'branch anterior
git checkout -
Treu els branch que ja han estat fusionats amb la master
git branch --merged màster | grep -v '^ \ *' | xargs -n 1 git branch -d
Llista totes les branques i els seus últims commit amb el branch
git branch -vv
Fa un seguiment de l'branch
git branch -o origin / mybranch
Això elimina un branch local
git branch -d <local_branchname>
Això elimina un branch remot
git push origin --delete <remote_branchname>
Desfer canvis locals amb l'últim contingut al cap
git checkout - <nom de l'arxiu>
Reverteix XNUMX commit creant un nou commit
git revertir <commit-ish>
Descarta un commit, es recomana només en branch privats
restabliment de git <commit-ish>
Canvia el missatge de l'commit anterior
git commit -v --amend
Modifica l'Autor
git commit --amend --author ='Autor Name'
Restableix l'autor, després que l'autor a estat canviat en la configuració global
git commit --amend --reset-Autor --no-edit
Canvia la URL remot
git remote set-URL origin <URL>
Obté una llista de totes les referències remotes
git remote
alternativa:
git remote show
Obté una llista de tots els branches locals i remots
git branch -a
Obté una llista dels branches remots
git branca -r
Afegeix les part que van canviar d'un arxiu, en lloc de tot l'arxiu
git add -p
Busca els bash completats
curl http://git.io/vfhol > ~/.git-completion.bash && trobo '[-F ~ / .git-completion.bash] &&. ~ / .Git-completion.bash' >> ~/.bashrc
Mostra els canvis de les últimes 2 setmanes
git log --no-Merges --raw --since ='Fa setmanes 2'
alternatives:
git whatchanged --since ='Fa setmanes 2'
Visualitza tots els commit dels fork de l'màster
git log --no-Merges --stat --reverse màster ..
Selecció de commits a través dels branches usant cherry-pick
git checkout <branch-name> && git cherry-pick <commit-ish>
Troba els branches que contenen commit hash
git branch -a --contains <commit-ish>
alternativa:
git branch --contains <commit-ish>
Alias de Git
git config --global àlies.<gestionar> <comanda>
git config --global àlies.st estatus
Guarda ràpidament i de manera provisional (stasheado) els treballs realitzats
git stash
alternativa:
git Stash save
Stasheado de tots els arxius, inclusos els que no estan preparats.
git Stash save -o
alternativa:
git Stash save --include-untracked
Montrar llista de tots els fitxers stasheado
git Stash list
Utilitza qualsevol canvi stasheado sense esborrar-lo de la llista de stasheados
git Stash apply <Stash @ {n}>
Reaplicar els canvis stasheados i treure'l de la llista de stasheados
git Stash pop
Alternatives:
git Stash apply Stash @ {0} && git Stash drop Stash @ {0}
Esborrar tots els stashes emmagatzemats
git Stash clear
Alternatives:
git Stash drop <Stash @ {n}>
Prendre un arxiu específic que hagi estat stasheado
git checkout <Stash @ {n}> -- <ruta_fitxer>
alternativa:
git checkout Stash @ {0} - <ruta_fitxer>
Mostra tots els arxius preparats
git ls-files -t
Mostra tots els arxius que no han estat preparats
git ls-files --others
Mostra tots els arxius ignorats
git ls-files --others -i --exclude-standard
Crear un nou arbre de treball d'un repositori (git 2.5)
git worktree add -b <branch-name> <camí> <start-point>
Crear un nou arbre de treball des d'un HEAD
git worktree add --detach <camí> CAP
Suprimir un fitxer de l'repositori git sense eliminar-lo de l'repositori local
git rm --cached <ruta_fitxer>
alternativa:
git rm --cached -r <directory_path>
Abans d'eliminar arxius sense preparar, fer un recorregut de prova per obtenir la llista d'aquests arxius.
git clean -n
Forçar l'eliminació d'arxius sense preparar
git clean -f
Forçar l'eliminació de directoris sense preparar
git clean -f -d
alternativa:
git clean -df
Actualitzar tots els submòduls
git submodule foreach git pull
Mostra tots els canvis de l'branch actual que no han fet merged amb el màster
git cherry -v màster
alternativa:
git cherry -v màster <branch-to-be-merged>
Reanomenar un branch
git branch -m <nom-nou-sucursal>
alternativa:
git branch -m [<nom-de-sucursal-antiga>] <nom-nou-sucursal>
Actualitzar 'feature' i fer merged 'màster'
git checkout feature && git sobrepassi @ {- 1} && git checkout @ {- 2} && git merge @ {- 1}
Arxivar branch màster
git arxivi màster --format = zip --output = master.zip
Modificar el commit anterior sense modificar el missatge de l'informe
git add --all && git commit --amend --no-edit
Eliminar les branques remotes que ja no existeixin en origin
git fetch -p
alternativa:
git remote prune origin
Recuperar el commit hash de la revisió inicial
git rev-list --reverse HEAD | head -1
Visualitza l'arbre de versions
git log --pretty = oneline --graph --decorate --all
alternativa:
gitk --all
Afegir un projecte a un repositori usant subarbre
git subtree add --prefix =<nom_directori>/<nom del projecte> --squash git@github.com:<nom d'usuari>/<nom del projecte>.git màster
Obté els canvis de la teva repositori per a un projecte vinculat utilitzant subarbre
git subtree pull --prefix =<nom_directori>/<nom del projecte> --squash git@github.com:<nom d'usuari>/<nom del projecte>.git màster
Exporta un branch i el seu historial a un arxiu
git bundle create <file> <branch-name>
Importa des d'un bundle
git clone repo.bundle <repo-dir> -b <branch-name>
Obté el nom de l'branch actual
git rev-par-se --abbrev-ref HEAD
Ignora un arxiu que ja li han fet commit (eg Changelog).
git update-index --assume-unchanged Changelog; git commit -a; git update-index --no-assumeix-unchanged Changelog
Stashea els canvis abans de reorganitzar
git sobrepassi --autostash
Cerca per aneu al branch local
git fetch origin pull /<id>/ Head:<branch-name>
Alternatives:
git pull origin pull /<id>/ Head:<branch-name>
Mostra els tag més recents de la branca actual
git descriu --tags --abbrev = 0
Busca diferències.
git diff --word-diff
No té en compte els canvis a l'arxiu de seguiment
git update-index --assume-unchanged <nom de l'arxiu>
desfer
git update-index --no-assumeix-unchanged <nom de l'arxiu>
Netejar els arxius de .gitignore
.
git clean -X -f
Restaurar arxiu eliminat.
git checkout <deleting_commit>^ - <ruta_fitxer>
Restaurar arxius amb un commit-hash específic
git checkout <commit-ish> -- <ruta_fitxer>
Sempre reorganitzar en lloc de fer merge
git config --global branch.autosetuprebase always
Llistar tots els àlies i les configuracions
git config --list
Fer cas git sensible
git config --global core.ignorecase false
Tipus de autocorrecció.
git config --global ajuda.correcció automàtica 1
Comprova si el canvi és part d'un release.
git name-rev --name-only <share1>
Netejar Dry run.
git clean -fd --dry-run
Marca el commit com una solució a l'commit anterior
git commit --fixup <share1>
Correcció d'esquaix
git sobrepassi -i --autosquash
Salta l'area d'assaig durant el commit.
git commit -am <missatge de confirmació>
Llistar els arxius ignorats
git check-ignori *
Status dels arxius ignorats
git status --ignored
Commits al Branch1 que no estan en el Branch2
git log Branch1 ^ Branch2
gravar i reutilitzar anteriors resolucions de conflictes
git config --global rerere.enabled 1
Obriu tots els arxius en conflicte en un Editor.
git diff --name-only | únic | xargs $ EDITOR
Compta el nombre d'objectes sense preparar i el seu consum en el disc.
git count-objects --human-readable
Manteniment dels objectes inaccessibles
git gc --prune = now --aggressive
Visualitza a l'instant el seu dipòsit en gitweb.
git instaweb [--local] [--httpd=<httpd>] [--Port=<port>] [--Browser=<navegador>]
Visualitza les firmes GPG en el log de confirmació
git log --show-signature
Elimina entrades de la configuració global.
git config --global --unset <entry-name>
Obtingui una nova branca sense historial
git checkout --orphan <branch_name>
Visualitza la diferència entre l'arxiu de producció i l'última versió del mateix.
git diff --staged
Extreure un arxiu d'un altre branch.
git show <branch_name>:<nom de l'arxiu>
Llista només l'arrel i confirma el merge
git log --first-parent
Fa merge entre dues commit
git sobrepassi --interactive HEAD ~ 2
Llista tots els branch
git checkout master && git branch --no-merged
Troba utilitzant cerca binària
git bisect start git bisect bad git bisect good v2.6.13-rc2 git bisect bad git bisect good git bisect reset
Llista els commits i canvis d'un arxiu en específic
git log --follow -p - <ruta_fitxer>
Clona un sol branch
git clone -b <branch-name> --single-branch https://github.com/user/repo.git
Crea i canvia a un nou branch
git checkout -b <branch-name>
Ignora els arxius que tinguin canvis en els commits
git config core.fileMode false
Excel·lent recopilació d'ordres 😉
Excel·lent aportació !!