TIG est un programme ncurses pour GIT. Parfait pour travailler en ligne de commande sur votre serveur.

Pour l'installer, il suffit de faire tout simplement :

aptitude install tig

Ou de le compiler depuis les sources disponibles ici.

L'usage le plus simple est d'utiliser TIG quand vous êtes placés dans un dépôt GIT. Une interface visuelle de git-log s'affiche alors.

Vous pouvez alors vous déplacer dans l'historique de modifications avec les flèches bas et haut (ou "j" et "k"). "Entrée" va afficher une entrée de l'historique, avec un diff du commit. Utiliser la barre d'espace va vous déplacer dans ce diff, alors que les flèches haut et bas vont vous déplacer entre les commits. Appuyer sur "q" va fermer la séparation en deux de la fenêtre (celle de la liste git-log et le diff), puis une seconde fois sur "q" va fermer le programme.

tig-main-view-split.png

Un autre aspect utile de TIG est la vue par arbre (tree-view). Après avoir lancé TIG, appuyez sur "t" quand vous êtes dans la liste des modifications, et vous aurez une vue navigable du dépôt. Appuyez "Entrée" pour descendre dans les répertoires ou pour visualiser un fichier, ou encore "majuscule"+"B" sur un fichier, pour avoir une vie avec annotations.

tig-tree-view.png

TIG peut aussi travailler avec les branches, des tags, hash, ou autres... Essayez donc une commande du genre :

tig origin/rel-1.5

Afficher une branche contre une autre branche est assez simple, pour par exemple copier des informations d'une autre branche à la branche actuelle. Si nous avons "commité" un changement au "master" qui doit être présent dans la branche origin/rel-1.5, on peut faire par exemple :

git checkout -b 1.5 origin/rel-1.5

Ouvrez alors TIG avec :

tig master

Déplacez vous au changeset que vous désirez copier, et appuyez "Majuscule"+"C". Répétez si besoin.

tig-blame-view.png

Vous pouvez aussi regarder des commandes tel que :

tig show [rev]
tig blame [file]
tig status

Permet avec la touche "u" pour faire un ajout interactif.

Le manuel est ici, bonne lecture !