Comme je suis sous Windows, j'ai créé un petit script faire exactement la même chose à PERL, plutôt que Shell, ou Powershell px :):
#*******************************************************************************
# Module: delete_empty_changelist.pl
# Purpose: A script to delete empty changelist
#
@list = `p4 changes -s submitted`;
foreach $chg (@list)
{
$chgnbr = (split /\s+/, $chg)[1];
print `p4 change -d -f $chgnbr`;
}
exit 0;
Notez que, en fait, , dans tous les cas, ce n'est pas un script très intelligent: Il essaie de supprimer absolument toutes les listes de modifications soumises, et il est empêché par forcément de le faire, car si des fichiers sont associés, vous obtiendrez une erreur.
Je suppose que le résultat du script doit être envoyé à un journal, et analyser, de sorte que seules les lignes pertinentes sont en surbrillance.
L'exécution du script produira une sortie similaire à:
Change 857 has 1 files associated with it and can't be deleted.
Change 856 has 1 fixes associated with it and can't be deleted.
Change 855 has 1 fixes associated with it and can't be deleted.
Change 854 deleted.
Change 853 has 1 fixes associated with it and can't be deleted.
Change 852 has 8 files associated with it and can't be deleted.
Change 851 has 1 files associated with it and can't be deleted.
Change 850 has 2 files associated with it and can't be deleted.
Change 849 has 2 files associated with it and can't be deleted.
Change 846 deleted.
Change 845 has 2 files associated with it and can't be deleted.
Cheers,
Thomas
Vous devez accepter votre propre réponse (pour marquer la réponse). :-) – PhiLho
Je ne pouvais pas utiliser les réponses proposées sur mon PC Windows, j'ai donc écrit un petit script PERL pour faire la même chose. :-) –