2015-04-30 1 views
4

Par exemple, git log --graph commit_a..commit_b signifie inclure des validations accessibles depuis commit_b et exclure des validations accessibles depuis commit_a.Le journal Git inclut les validations qui ont été exclues?

Cependant, existe-t-il un moyen de forcer include commit_a dans la condition ci-dessus? (C.-à-liste engage accessible à partir commit_b mais pas (engage accessible à partir commit_a sauf commit_a lui-même))

commit_a^..commit_b semble être une solution facile, mais il ne fonctionne pas dans certains cas: (1) si commit_a est une validation racine , une erreur se produit puisque commit_a^n'existe pas; (2) si commit_a est un commit de fusion, ceux accessibles depuis commit_a^2 (ou peut-être^3, ...) sont inclus, ce qui n'est pas souhaité.

De plus, existe-t-il un moyen d'enregistrer plusieurs séquences de validations avec un graphique? Tels que: (engage accessible à partir commit_b mais engage accessible à partir commit_a) plus (engage accessible à partir commit_d mais engage accessible à partir commit_c)

Un git log --graph commit_a..commit_b commit_c..commit_d simple ne fonctionne pas dans certains cas, par exemple commit_b est un ancêtre de commit_c et donc commit_a..commit_b est totalement exclu.

Répondre

0

Cela devrait faire exactement ce que vous cherchez sur votre première question:

git log --boundary commit_a..commit_b