Je travaille sur un script pour interagir avec Perforce, qui entre autres choses doit être capable de comprendre les changelists en attente. Pour cela, j'utilise ' p4 describe
et p4 opened
qui sont assez simples. Par exemple, un fichier ouvert pour être édité s'affiche comme ceci (à partir de p4 opened) :
//source/stuff/things.h#1 add default change (text)
Ce que je ne peut pas est de savoir comment détecter les cas où un utilisateur a créé une branche dans un fichier et a ensuite utilisé la commande "Réouvrir pour modifier" sur ce fichier (ce qui revient à utiliser ' p4 edit
' sur le fichier à brancher) avant de le soumettre. Il en va de même pour l'intégration d'un fichier et l'utilisation de 'Reopen for edit' avant de soumettre l'intégration. Dans le cas d'une branche, le fichier apparaît comme un "ajout" sans indication qu'il y a également une branche en cours (l'exemple ci-dessus pourrait donc être soit un véritable ajout, soit une branche réouverte). Dans le cas de l'intégration, le fichier est affiché comme une "édition". Dans les deux cas, après avoir soumis la modification, je peux voir que le fichier a été branché/intégré, mais j'ai besoin de pouvoir le faire pour les modifications en attente. En théorie, j'espère voir quelque chose comme ceci, où things.h est branché et édité à partir de thangs.h :
//source/stuff/things.h#1 add default change (text)
branch from //source/other/thangs.h#42
Quelqu'un connaît-il un moyen d'y parvenir ? Je précise également que j'utilise une version ancienne de Perforce (2004). Il se peut donc que ce soit possible dans les versions plus récentes et que je doive simplement mettre à jour mon logiciel.