4 231
modifications
Aucun résumé des modifications |
Aucun résumé des modifications |
||
(18 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
[[category:desktop]] | |||
=0= | |||
<pre>aptitude install git</pre> | <pre>aptitude install git</pre> | ||
Ligne 14 : | Ligne 16 : | ||
<pre> | <pre> | ||
git checkout -- . | git checkout -- . | ||
ou | ou | ||
git checkout -f | |||
ou encore | |||
git checkout master . | git checkout master . | ||
</pre> | </pre> | ||
Ligne 31 : | Ligne 32 : | ||
</pre> | </pre> | ||
On peut ensuite modifier des fichiers, et les commit dans la | On peut ensuite modifier des fichiers, et les commit dans la branche experimentale | ||
<pre> | <pre> | ||
git commit -a | git commit -a | ||
</pre> | </pre> | ||
Puis | On peut pousser cette nouvelle branche sur notre repo distant : | ||
<pre> | |||
git push -u origin experimental | |||
</pre> | |||
Puis revenir à la branche par défaut avec : | |||
<pre> | <pre> | ||
git checkout master | git checkout master | ||
Ligne 45 : | Ligne 51 : | ||
git merge experimental | git merge experimental | ||
</pre> | </pre> | ||
Puis vous pouvez supprimer la branche experimental : | |||
<pre>git branch -d experimental</pre> | |||
=Récupérer le message de commit de manière interactive= | =Récupérer le message de commit de manière interactive= | ||
Ligne 56 : | Ligne 65 : | ||
Modifiez l'éditeur de fichier utilisé par git : | Modifiez l'éditeur de fichier utilisé par git : | ||
<pre>git config core.editor .git/plop.sh</pre> | <pre>git config core.editor .git/plop.sh</pre> | ||
=Récupérer une branche distante= | |||
<pre>git branch -a</pre> | |||
Les branches marqués "remotes" (en rouge) sont présente uniquement de manière distante. Il faut les récupérer avant de pouvoir y toucher. | |||
La commande suivante permet de créer la branche locale "dev" et de la lier a la branche distante "dev" déjà existante | |||
<pre>git checkout -b dev origin/dev</pre> | |||
=Supprimer une branche distante= | |||
<pre>git push origin --delete BRANCHE</pre> | |||
Puis on peut supprimer la version locale de la branche : | |||
<pre>git branch -d BRANCHE</pre> | |||
=Mettre à jour la liste des branches distantes= | |||
<pre>git remote update --prune</pre> | |||
=diff= | |||
==Diff entre plusieurs branches== | |||
Diff entre la branche en cours et master: | |||
<pre>git diff master</pre> | |||
Diff entre deux branches (master et staging ici): | |||
<pre>git diff master..staging</pre> | |||
=Merge= | |||
==dry run== | |||
<pre>git merge --no-commit --no-ff $BRANCH</pre> | |||
Puis | |||
<pre>git merge --abort</pre> | |||
=Créer un patch= | |||
Patch résumant le dernier commit : | |||
<pre>git format-patch -1 HEAD</pre> | |||
Que vous pouvez appliquer tout bêtement avec patch : | |||
<pre>patch -p1 < lepatch.patch</pre> | |||
=Annuler un commit= | |||
==Annuler le précédent commit local== | |||
En conservant les fichiers | |||
<pre> | |||
git reset --soft HEAD^ | |||
</pre> | |||
En supprimant les fichiers | |||
<pre> | |||
git reset --hard HEAD^ | |||
</pre> | |||
==Annuler le précédent commit public== | |||
<pre> | |||
git revert HEAD | |||
</pre> | |||
=Retrouver le commit qui a supprimé un fichier= | |||
<pre>git log --full-history -- FICHIER</pre> | |||
=Utiliser kdiff3 en tant qu'outil de diff/merge= | |||
<pre> | |||
git config --global --add merge.tool kdiff3 | |||
git config --global --add mergetool.kdiff3.path "/usr/bin/kdiff3" | |||
git config --global --add mergetool.kdiff3.trustExitCode false | |||
git config --global --add mergetool.prompt false | |||
git config --global --add diff.guitool kdiff3 | |||
git config --global --add difftool.kdiff3.path "/usr/bin/kdiff3" | |||
git config --global --add difftool.kdiff3.trustExitCode false | |||
git config --global --add difftool.prompt false | |||
</pre> | |||
Puis utiliser <code>git difftool</code> (plutôt que <code>git diff</code>) |