Joyeux anniversaire, Git ! Voici nos commandes Git préférées

Le 17e anniversaire de Git est le 7 avril 2022. Depuis sa création, Git est devenu un outil standard pour le développement de logiciels. Il aide les programmeurs à suivre les modifications qu’ils apportent à leur code et, en tant que plate-forme d’hébergement de code, il permet aux utilisateurs de trouver des applications utiles. Si vous interagissez avec le code source, open source ou autre, il y a de fortes chances que vous interagissiez avec Git. Avec autant de personnes utilisant Git quotidiennement, je me suis demandé quelles sont les commandes Git préférées de la communauté open source. Quoi de mieux pour le savoir que de demander ?
git diff
L’un des joyaux cachés de Git est sa capacité à faire des comparaisons au niveau des mots.
$ git diff --word-diff file1 file2
Ce n’est pas seulement pour les dépôts Git non plus. Il peut également différencier des fichiers arbitraires :
$ git diff --word-diff file1 file2
—Kartik Subbarao
statut git
je ne peux pas vivre sans le git status
commander. Celui-ci est génial si j’ai récemment ajusté mon .gitignore
, et je ne suis pas sûr d’avoir la syntaxe correcte. C’est aussi bien si je veux voir rapidement quels fichiers PHP, SCSS ou JavaScript sont validés avant de faire une dernière analyse PHPCS.
— Miriam Goldman
git cherry-pick
j’utilise git cherry-pick
si j’ai travaillé sur une branche et que je ne souhaite conserver qu’un ou deux commits. Je peux extraire les modifications d’un seul commit et les appliquer à la branche sur laquelle je travaille actuellement. C’est utile lorsqu’il y a des conflits de fusion, mais qu’il y a un ou plusieurs changements importants dont vous avez besoin pour une raison quelconque.
—Ryan Price
blâme
j’utilise git blame
car invariablement quand je regarde le code et que je demande “qui a fait ça ?” la réponse finit par être moi. C’est généralement quelque chose que j’ai fait il y a longtemps, et j’ai oublié pourquoi il devait en être ainsi. Si ce n’était pas moi, alors ça me donne un pointeur pour aller demander à quelqu’un pourquoi elles ou ils l’a fait et pourquoi il devait en être ainsi.
—John ‘Warthog9’ Hawley
bissectrice de git
Mon préféré doit être git bisect
. Il aide à identifier le commit qui a introduit un bogue en effectuant une recherche binaire sur les commits. Simple à utiliser mais incroyablement efficace.
De plus, si je crée un script qui me dit si la source actuelle est bonne ou mauvaise, alors git bisect run
décrypte tout tout seul !
—Mohammed Saoud
git cachette
Au travail, je dois faire face à des projets clients afin de reproduire des comportements spécifiques. le git stash
La commande me permet de revenir très rapidement à l’état initial après avoir appliqué des modifications aux projets que je souhaite rétablir.
—Stephan Avenwedde
Facilement git stash
! Je déraille beaucoup dans des affaires urgentes (corrections de bugs) lors du codage d’un morceau plus long. J’aime à quel point c’est verbeux. Cela correspond au fonctionnement de mon cerveau. Mais il ne s’agit pas seulement d’être distrait par des questions plus urgentes. Parfois, stash
sert un objectif plus élevé : le besoin de rechercher une solution divergente à quelque chose de déjà résolu. Peut-être que c’est plus élégant ou chaotique. Peut-être que c’est juste une table rase, une pause qui pourrait mener à rien ou à quelque chose de grand. Quoi qu’il en soit, je peux toujours revenir en arrière et revenir à mon travail en cours.
—Diego Pino Navarro
j’adore utiliser git stash
et avoir la capacité de cacher les changements dont je ne suis pas sûr et de pouvoir les rappeler plus tard. C’est un excellent moyen de pouvoir discuter avec une idée.
—Michael Anello
git pousser
La première raison est que j’aime git push
c’est qu’il vous permet simplement de partager votre travail (votre code) avec d’autres ! La deuxième raison est que push --force
est considéré comme nocif et destructeur, mais j’aime le voir comme un grand pouvoir qui s’accompagne d’une grande responsabilité. 😊
—Noaa Barki
Ma réponse pratique : git add -p
car cela me permet d’avoir cette étape de révision supplémentaire avant de valider mon code. De plus, je peux rapidement ajouter uniquement les modifications pertinentes, puis supprimer tout pseudo-code ou débogage absurde qui reste.
Ma vraie réponse : git push
parce que ça me rappelle la chanson “Kick, Push” de Lupe Fiasco et signifie aussi “J’ai fait le truc et il ne reste plus qu’à ouvrir un PR.”
—Qymana Botts
[ Keep this command on hand and more with our updated Git cheat sheet. ]
git fusionner
Ma commande Git préférée est git merge
. Plus précisément, j’aime fusionner les branches de développement dans la branche principale avec ce qui suit :
$ git merge --strategy recursive -X theirs 3.17.x
le theirs
option au sein de la recursive
la stratégie de fusion intègre les changements de leur tant que les changements n’entrent pas en conflit avec ce dans quoi ils sont fusionnés.
—Joël Krahemann
Si vous savez que vous ne voulez jamais remplacer les valeurs locales lors d’une fusion, le -Xours
flag est un gain de temps considérable, en particulier lorsqu’il est utilisé pour synchroniser le code entre les dépôts en miroir. S’il trouve un conflit, il force Git à conserver la valeur locale et à ignorer les modifications entrantes.
—Martin Anderson-Clutz
réinitialisation de git
Comme je me retrouve constamment à abandonner des modifications ou à m’assurer que ma branche locale est synchronisée avec la télécommande, j’utilise git reset
beaucoup. Je trouve également que c’est une commande utile car elle me permet de réinitialiser ma branche et de revenir en arrière dans l’historique de mon référentiel.
—Sean Dietrich
git reflog ou rebase ?
La commande git reflog
est mon Seigneur et sauveur, mais git rebase -i
est mon préféré parce que j’aime réécrire l’histoire.
—Dan Gurin
Votre commande git
Il existe de nombreuses commandes Git parmi lesquelles choisir, alors quelle est votre préférée ? Y a-t-il une commande de rêve qui manque à Git ? Dites le nous dans les commentaires!