web-dev-qa-db-fra.com

perforce: synchronisation avec une révision antérieure

Je veux tester un correctif et comparer le comportement avant le correctif par rapport à maintenant; J'ai besoin de me synchroniser avec une version antérieure. Donc, si le correctif a été validé dans la révision x; comment puis-je synchroniser avec une révision avant, disons x0?

26
Asad Iqbal

J'ai trouvé la réponse en écrivant ma question. J'ai essayé:

p4 sync ...@x0 

où x0 est la liste des modifications avant la modification contenant le correctif. Mais seule une fraction des fichiers était rétablie. J'ai constaté que lorsque nous spécifions ... seuls les fichiers de ce dossier et de ces sous-dossiers étaient synchronisés. La commande ci-dessus doit donc être exécutée à partir de la racine de l'espace de travail.

9
Asad Iqbal

Supposons que vous souhaitiez revenir à la révision 'n' de la révision 'n + 1' (restauration). Vous pouvez suivre les étapes suivantes:

  1. synchronisation p4 ... @ n

    Cela synchronisera vos fichiers avec l'ancienne version que vous souhaitez

  2. p4 modifier ...

    Ouvrez tous les fichiers à modifier ou faites "p4 modifier le nom de fichier" pour ouvrir uniquement un fichier particulier à modifier.

  3. p4 sync ... @ n + 1

    Avant de soumettre, vous devez synchroniser les fichiers avec la dernière révision du référentiel.

  4. p4 resolver -ay

    Cela acceptera les modifications que vous avez apportées, c'est-à-dire annuler toutes les modifications effectuées lorsque vous êtes passé de la révision "n" à "n-1". Si efficacement, tous vos fichiers ont été restaurés à la révision 'n' dans votre référentiel local.

  5. p4 soumettre ...

    Allez-y et soumettez les modifications. Cela ramènera tout le référentiel principal à la révision 'n'. En effet, les révisions "n" et "n + 2" (actuelles) seront identiques.

  6. p4 diff2 -q repository @ n repository @ n + 2

    C'est juste pour vérifier si vous avez annulé les fichiers. Cela devrait montrer que vous n'avez pas de fichiers différents dans les deux révisions.

J'ai trouvé la solution à partir de cela lien .

12
Elpis

Si vous souhaitez synchroniser un numéro de version spécifique (pas un numéro de liste de modifications) pour un fichier spécifique. Cela a fonctionné pour moi:

p4 sync //your/depot/path/and/file.name#1

pour vérifier que vous disposez de la version souhaitée, vous pouvez utiliser la cmd have

p4 have //your/depot/path/and/file.name
3
Chad Dienhart