J'utilise les extensions Git depuis un moment maintenant (c'est génial!) Mais je n'ai pas trouvé de réponse simple à ce qui suit:
Parfois, lors de la saisie d'un message de validation, une faute de frappe. Mon ami m'a montré comment résoudre le problème de la manière suivante (dans Git Extentions):
Faites un clic droit sur le commit> Avancé> Commit de correction
Ensuite, je coche simplement la case "Modifier" et réécris mon message et le tour est joué! Mon message de validation est corrigé.
Cependant cette autre option "Squash commit" ... je me suis toujours demandé ce que ça faisait?!
Ma question est:
Quelqu'un pourrait -il simplement m'expliquer quelle est la différence exacte entre le commit Squash et le commit Fixup dans les extensions Git / Git ? Ils me semblent un peu ... "similaires" :
la source
rebase
et squash / fixup dans la documentation Git .En termes simples, lors du rebasage d'une série de commits, chaque commit marqué comme un
squash
, vous donne la possibilité d'utiliser son message dans le cadre d'un messagepick
ou dereword
commit.Lorsque vous utilisez
fixup
le message de cette validation est ignoré.la source
fixup
?De git-rebase doc, section "mode interactif" :
la source
Si la question est de savoir quelle est la différence entre
squash
etfixup
dans git lors de l' exécution de git rebase --interactive , alors la réponse est le message de validation .Par exemple:
Le message de validation après le rebasage dans le cas 1 serait:
tandis que le message de validation dans le cas 2 est:
la source
J'ai bricolé des extensions git et je n'ai pas réussi à écraser de nombreux commits en un seul. Pour ce faire, j'ai dû recourir à la ligne de commande et j'ai trouvé ce message utile
Il s'agit d'un rebase interactif et notez ce qui suit:
la source
Pourquoi ne pas demander à git lui-même? Lorsque vous rebasez avec
git-bash
, il dit:Donc tu vois:
la source