Je souhaite générer une liste des fichiers modifiés entre deux révisions dans un répertoire donné dans Mercurial.
En particulier, je ne suis pas intéressé par ce qui a changé, mais par quels fichiers ont changé dans ce répertoire.
Par exemple, en supposant qu'entre then
et otherthen
, seuls 2 fichiers ont changé:
>hg hypothetical-command -r then:otherthen
foo.baz
bar.baz
>
Quelle est la commande hypothétique? J'ai essayé diff et log, mais je ne vois pas comment les convaincre de le faire: soit j'obtiens le correctif (diff), soit j'obtiens tout le repo (log).
version-control
mercurial
Paul Nathan
la source
la source
hg status --rev x:y .
hg status --rev .^
-n
, c'esthg status --rev x:y -n
hg status --change .
répertorie les fichiers modifiés dans.
- même liste quehg status --rev .^
mais plus directementle statut est ce dont vous avez besoin.
Mais, selon ce que vous entendez par «entre deux révisions», vous pouvez également envisager d'utiliser la plage « x :: y » (DAG - Directed Acyclic Graph).
Compte tenu des ensembles de modifications parallèles,
1--2---4 \---3
hg status --rev 1:4
renverrait (1, 2, 3, 4), c'est-à-dire tout ce qui se trouve entre et y compris les points d'extrémité, selon la rév numérique locale . Cela pourrait (et très probablement renverra) des résultats différents dans d'autres référentiels - bien que liés!hg status --rev 1::4
renverrait (1, 2, 4), c'est-à-dire les points de terminaison, et tous les changesets qui sont les descendants de '1' ET les ancêtres de '4'.Le dernier cas, x :: y, est généralement plus utile dans les applications du monde réel. C'est ce que vous obtenez via TortoiseHg \ Visual Diff.
> hg help revsets:
la source
hg status --rev x::y
".