web-dev-qa-db-fra.com

Comment supprimer un client perforce avec une liste de modifications en attente

J'ai un espace de travail dans perforce dans lequel j'ai créé des fichiers marqués pour suppression. Maintenant, je veux supprimer cet espace de travail avec force. 

Mais je n'ai pas de droits d'administrateur. Comment puis-je atteindre cet objectif?

36
Steve Mark

Exécutez p4 opened pour voir tous vos fichiers ouverts et exécutez p4 revert pour les restaurer.

Ensuite, exécutez p4 changes -c your-client-name -s pending pour voir toutes vos listes de modifications en attente. Comme dans la première étape vous avez annulé tous vos fichiers ouverts, ces listes de modifications seront toutes vides. Exécutez p4 change -d change-number pour supprimer chaque liste de modifications en attente vide.

Ensuite, vous pouvez exécuter p4 client -d pour supprimer votre client.

47
Bryan Pendleton

Pourquoi n’est-ce que 11 clics dans P4V, via une séquence arbitraire d’éléments de menu.

  1. Clic droit sur la liste des modifications
  2. Supprimer les fichiers en attente
  3. 'Oui'
  4. Clic droit sur la liste des modifications 
  5. Supprimer tous les travaux
  6. Clic droit sur la liste des modifications
  7. Rétablir les fichiers
  8. 'Revenir'
  9. Clic droit sur la liste des modifications 
  10. Supprimer la liste de modifications en attente
  11. 'Oui'

Envoyons Perforce à l'école de convivialité.

45
Colonel Panic

Voici une procédure scriptable pour supprimer un client Perforce. À utiliser avec précaution: tous vos travaux en cours sur le client seront supprimés!

  1. Annuler tous les fichiers modifiés sur ce client.

    p4 -c $CLIENT revert -k //...
    

    Notez l'utilisation de l'option -k, qui "marque le fichier comme étant rétabli dans les métadonnées du serveur sans modifier les fichiers de l'espace de travail client". Étant donné que nous allons supprimer le client ultérieurement, nous ne nous soucions pas de mettre à jour l'espace de travail du client. Cela accélère les choses si vous avez beaucoup de fichiers ouverts.

  2. Supprimez tous les fichiers protégés des modifications en attente associées au client.

    p4 changes -s shelved -c $CLIENT | cut -d' ' -f2 |
    while read CHANGE; do p4 shelve -c $CHANGE -d //...; done
    

    Si vous n'utilisez jamais p4 shelve, vous pouvez omettre cette étape.

  3. Toutes les modifications en attente associées au client sont maintenant vides. Supprime-les.

    p4 changes -s pending -c $CLIENT | cut -d' ' -f2 | p4 -b 1 -x - change -d
    
  4. Il n'y a maintenant aucune modification en attente associée au client. Supprimer le client.

    p4 client -d $CLIENT
    

(Ce processus devrait être beaucoup plus simple! En particulier, il ne semble pas y avoir de bonne raison pour laquelle nous devons supprimer les fichiers stockés associés à un client avant de le supprimer. Si vous rencontrez des difficultés, contactez le support Perforce et suggérez-le. simplifié.)

10
Gareth Rees

Voici ce que j'ai fait pour vider mon ensemble de modifications par défaut, qui contenait beaucoup de fichiers à éditer:

 p4 opened | sed 's/#.*$//g' |  xargs -iF p4 revert F

Cela coupera la partie commentaire du nom de fichier généré par p4 opened et dirigera le nom de fichier vers p4 revert. Après cela, je n'ai plus rien eu en attente et p4 changes -c my-client-name -s pending ne donne rien. Si vous avez un jeu énorme de changements, cela prendra un certain temps.

10
Juve

A écrit ce script appelé P4-DELETE-CLIENT pour supprimer un client p4 (qui contient des listes de modifications et d'autres problèmes).
Il présente les caractéristiques suivantes:

  • supprime automatiquement les listes de modifications (rétablit les demandes en attente et supprime les mises en attente)
  • corrige le nom d'hôte (s'il diffère de celui sur lequel le client a été créé)
  • déverrouille le client s'il est verrouillé
  • supprime le client
  • supprime les fichiers associés (peut être configuré à partir d'arguments)

Notez que le script s'appuie sur d'autres scripts du repo .

5
Arnon Zilca

essayez ces étapes:

  1. 1.Clic droit sur la liste des modifications

  2. Choisissez 'Change Ownership'

  3. Dans la zone de travail, choisissez un espace de travail existant et cliquez sur OK.

  4. faites un clic droit sur la liste des modifications et choisissez Supprimer, puis ok.
2
aristotaly

Tous les fichiers doivent être rétablis avant que la liste des modifications puisse être supprimée.

Deux étapes via p4v (version 2013.4):

  1. Rétablir tous les fichiers. 

    Right click the pending changelist, and then choose "Revert Files"

  2. Supprimer la liste de modifications.

    Right click the changelist, and then choose "Delete Pending Changelist 'XXXXXX'"

1
nybon

Cela a fonctionné pour moi dans P4V pour réinitialiser la liste de modifications par défaut:

  1. Cliquez avec le bouton droit sur la liste de modifications par défaut et choisissez "Modifier en attente Liste de modifications 'par défaut'"

  2. Cliquez sur le bouton en bas à droite "Enregistrer comme liste de modifications numérotée"

  3. Faites un clic droit sur la nouvelle liste de modifications et choisissez "Supprimer la liste de modifications XXX".

Vous pouvez également cliquer avec le bouton droit de la souris sur la nouvelle liste de modifications pour restaurer les fichiers, peu importe la tâche à effectuer. Cette option n’est pas disponible en option dans la liste de modifications par défaut.

0
John Starr Dewar