2010-02-05 30 views
2

Je souhaite résoudre en toute sécurité tous les fichiers d'une liste de modifications en attente.Résolution automatique Perforce (sur une liste de modifications en attente) à partir de la ligne de commande?

Actuellement, la seule façon que je sais de le faire est de transmettre à p4 une liste de fichiers.

 
SET CHANGE_NUMBER=default 
SET CHANGE_FILES=files.txt 
DEL %CHANGE_FILES% 
for /f "tokens=1 delims=#" %%a in ('p4 opened -c %CHANGE_NUMBER%') DO ECHO %%a>>%CHANGE_FILES% 
p4 -x %CHANGE_FILES% resolve -as 

Est-ce possible avec une seule commande p4?

Répondre

2

p4 resolve peut prendre une liste de fichiers, donc je pense que vous pouvez l'écrire comme si (syntaxe shell Unix pris):

p4 resolve -as `p4 opened -c <change-number>` 

en utilisant la syntaxe backquote pour insérer le résultat de l'exécution de la commande p4 opened , où <change-number> est le numéro de votre liste de modifications.

(Si vous n'avez aucun fichier ouvert dans une autre liste de modifications, vous devriez pouvoir utiliser le plus simple p4 resolve -as //...).

+0

p4 peut aussi manger les arguments d'entrée de stdin. 'p4 ouvert -c | p4 -x - résolution -as ' – Epu

2

La résolution p4 -am (acccept merge) est également utile pour ceux que vous pouvez utiliser dans la version fusionnée. Les autres options sont -ay (acceptent les vôtres), -at (acceptent les leurs).