Est-ce que les deltas de piste Perforce propres à un ou changeset il ne stocke que le fichier entier?

StackOverflow https://stackoverflow.com/questions/4272022

  •  28-09-2019
  •  | 
  •  

Question

J'ai essayé de fusionner un travail qu'un développeur a fait dans une branche de travail à une branche stable. Les fichiers a, b, et c avait été modifié par au moins une douzaine de changesets depuis l'ancêtre commun des branches STABLE et HEAD ont été séparés.

je m'y attendais depuis ce développeur a changé cinq lignes dans chacun des fichiers a, b et c, que lorsque j'intégré de la tête à la branche STABLE, je recevrais ses changements dans mon changset en attendant, que je pourrais ensuite passer en revue et engager.

Il semble plutôt qu'il a pris tout changement qui est arrivé à déposer A, puisque les deux sont ramifiés, et appliqué tous ces changements qui existaient aussi dans la copie de travail de mon collègue.

En d'autres termes, il semble y avoir aucune trace dans un changeset Perforce, de ce que mon collègue a changé en fait, par rapport à ce que le fichier avant contenu.

Si je passe en revue les changesets soumis, je peux voir la différence entre ma version collègue du fichier, et la version immédiatement précédente. Mais, cela ne, il semble, déterminer ce qui se passe dans la fusion.

ne pas de moyen de changeset, « un ensemble de modifications apportées entre rev X et la révision X + 1 d'un fichier »? aider quelqu'un peut me comprendre ce que cela signifie « intégrer un changeset », alors qu'en fait, ce qu'il semble que Perforce ne suit pas les changements, il suit des fichiers.

Il est tout à fait possible que je fais tout ce mal, et apprécierait tout pointeur à la façon dont il est que vous pouvez pouvez fusionner avec précision et en toute sécurité entre les branches de travail Perforce et les branches stables, sans choses que vous ne voulez pas obtenir intégré à la branche stable s'intégré. Il semble que peu importe la simplicité des changements qui se fait effectivement dans le produit, la fusion ne fait pas de travail pour moi.

Était-ce utile?

La solution

Perforce Finalité Enregistrer les modifications text fichiers en tant que deltas (fichiers binaires sont sauvés dans leur intégralité à chaque fois qu'un changement est soumis). On dirait que vous n'êtes pas restreindre correctement la gamme de révision lors de votre intégration.

Vous dites que la branche de travail a « ... été modifié par au moins une douzaine changesets depuis les ... branches ont été séparés. » L'appel de Laissez-les changelists 1-12. Si je vous comprends bien, vous essayez d'intégrer les modifications apportées à un seul de ces changelists, pas tous.

Lors d'une simple opération d'intégration Perforce vous assumer souhaitez intégrer tous les changements qui ont été présentées depuis la succursale a été faite. Si vous voulez seulement un sous-ensemble de ces modifications, vous devez spécifier une plage de révision. Donc, si vous voulez juste d'intégrer les changements survenus entre changelist 11 et 12, vous devez spécifier cette plage de révision comme le montre la capture d'écran. (Note: la plage de révision est inclusive, donc indiquer une plage de 11-12, comme je le fais dans ce plan d'écran comprendra en fait des changements dans changelists 11 et 12. Si vous voulez juste d'intégrer les changements made in changelist 12, 12 entre les deux champs de la gamme de révision.)

Il suffit de savoir que les conflits inévitables qui surgissent peuvent être difficiles à résoudre, selon jusqu'où les branches ont divergé et la nature des changements.

text alt

Autres conseils

Pouvez-vous être plus précis sur la façon dont vous avez fait l'intégration? Je pense que vous avez probablement intégré tous les changements jusqu'à ce changelist au lieu de simplement que changelist seulement. Si tout ce que vous devez faire est de spécifier le même changelist à la fois la limite supérieure et inférieure de l'intégration.

Il est très facile de le faire dans le client visuel, mais je ne suis pas sûr de l'interrupteur exact de la ligne de commande, vous devez utiliser.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top