web-dev-qa-db-fra.com

Moyen le plus rapide de soumettre une liste de modifications en attente

J'ai mis en suspens une liste de modifications (disons X) et je me suis assuré de son exactitude. Maintenant, je veux soumettre la liste de modifications. je peux 

  1. p4 unshelve -s X -c Y où Y est une nouvelle liste de modifications que je crée avant d'exécuter cette commande. Puis p4 shelve -c X -d et enfin p4 submit -c Y
  2. Sinon, je peux décompresser X, supprimer le tableau X et déplacer les copies locales vers la liste des modifications X (p4 rouvrir -c X) et soumettre X.
  3. La dernière option consiste à décompresser X, supprimer le tableau X, modifier p4 (et modifier la description) et enfin soumettre

Quelles sont vos suggestions concernant: -

  1. Utiliser 1/3 mais copier coller la description que X avait déjà dans les nouvelles listes de modifications
  2. Utilisez 2 mais copiez chaque fichier ouvert manuellement dans la commande p4 rouvrir.

Le seul avantage de 2 sur 1 et 3 est que je n'ai pas à supprimer X (car il s'est avéré que c'était la liste de modifications que j'ai soumise, alors que dans d'autres cas, elle est toujours "en attente").

14
Vineet Deoraj

D'ACCORD. Toutes les méthodes ci-dessus sont longues. Le plus court est

1)

  1. p4 shelve -c #changelist -d
  2. p4 submit -c #changelist
33
Vineet Deoraj

Dans la nouvelle version 2013.1 du serveur Perforce, vous pouvez désormais exécuter la procédure «p4 submit -e X», qui soumet directement l'étagère sans qu'il soit nécessaire de l'annuler au préalable.

Essayez, c'est une fonctionnalité géniale!

7
Bryan Pendleton

D'après mon expérience avec Perforce, je voudrais simplement décompresser la liste de modifications, supprimer les fichiers en attente et les soumettre. Assurez-vous simplement que la description de la liste de modifications est exacte. 

2
John Kane

Avec Perforce 2013.1 ou une version ultérieure, vous pouvez soumettre la liste de modifications "12345" inscrite directement:

p4 submit -e 12345

Sur les versions précédentes, utilisez cette combinaison:

p4 unshelve -s 12345
p4 submit ...
0
Matthew Simoneau

Depuis 2018, voici une réponse mise à jour pour les versions les plus récentes de perforce (2013.1 et plus récente)

p4 submit -e 123456

Cette commande échouera si vous avez déjà ouvert cet shelvelist dans un arbre comme ceci:

Change 123456 has shelved files --  cannot submit

Dans ce cas, accédez à la racine de cette arborescence (ou utilisez -C client_name_where_shelvelist_is_open) et annulez les modifications avant d'exécuter la commande ci-dessus, comme suit:

p4 revert -c 123456 ...
p4 submit -e 123456
0
Pranav Rai