2009-10-14 8 views
2

Je suis nouveau à Perforce. Que considéreriez-vous comme les meilleures pratiques P4 en termes de vues/succursales?Quelles sont vos pratiques Perforce pour les vues/succursales?

Souhaitez-vous créer 1 vue avec accès à de nombreuses branches ou créez-vous 1 vue/branche?

Je ne suis pas sûr que basculer entre les vues/worspaces est si facile dans Perforce.

Merci,

Thomas

Répondre

6

Si par "vue" vous voulez dire l'espace de travail (aka-spec client), alors je s'efforcer d'avoir une spécification client pour chaque branche je travaille. Je suppose que par branche vous voulez dire que vous avez un système typique où vous avez des lignes principales, des agences de développement, et peut-être des agences de publication?

La raison pour conserver la correspondance 1-1 est qu'elle permet simplement de simplifier les choses. Il peut également prévenir les accidents - par ex. Quand je suis dans une spécification client de développement, je sais que je ne peux pas accidentellement regarder ou modifier un fichier du même nom dans une autre branche. Cela peut être d'une grande aide lorsque vous êtes dans les profondeurs d'une hiérarchie de dossiers source profonde.

Garder les vues "serrées" est généralement une bonne pratique dans Peforce - comme dans n'importe quoi. Il aide les performances du serveur, ce qui à son tour améliore les performances de Perforce sur votre machine client. Mais au-delà de la performance, je pense que le concept de ne voir que ce que vous devez voir - laisser l'ordinateur faire le filtrage pour vous - est généralement une bonne chose. Il vous permet de vous concentrer sur votre travail sans distraction.

Je n'ai aucun changement d'espace de travail difficile, et il y a plusieurs façons de le faire en fonction de votre situation et de vos préférences. P4V a une liste déroulante simple en haut de la fenêtre de gauche, par exemple. Quelles difficultés avez-vous de changer d'espace de travail?

+0

Salut Greg, merci pour votre réponse. Oui, changer d'espace de travail en utilisant P4V est trivial. C'est sur la CLI que je l'ai trouvé moins intuitif. Si vous avez deux espaces de travail, disons c: \ worskpace1 et c: \ workspace2, j'ai eu l'impression que par défaut vous êtes censé travailler dans un seul espace (par exemple workspace1), défini lors de la connexion, mais c'était facile à faire "cd c: \ workspace2", "p4 sync", et si je ne me trompe pas, ce serait workspace1 qui se synchroniserait, alors que workspace2 le serait. Peut-être que je me trompe ? –

+3

Vous pouvez confondre des dossiers sur votre disque dur avec des espaces de travail dans Perforce - ces derniers mappent les fichiers du dépôt dans le premier. Simplement CD'ing à partir de la ligne de commande dit à Perforce rien - vous agissez simplement localement. Vous devez faire 'set P4CLIENT = ', et cela remplacera n'importe quelle spécification de client par défaut. Notez que si vous voulez que Perforce change les spécifications du client pour vous en fonction de votre répertoire actuel sur votre système de fichiers, vous pouvez le faire en utilisant le mécanisme P4CONFIG - fouiller dans les docs. Comme je l'ai dit, Perforce est très flexible/ –

+1

+1 pour l'utilisation de fichiers P4CONFIG. – JasonMArcher

0
  • Voici ce que Perforce says on the subject.
  • Également Eric Sink a a good discussion. Je crée une vue avec accès à de nombreuses branches. Étant donné que les branches s'affichent par défaut dans la vue de tout le monde, vous souhaitez définir une zone utilisateur sur la ligne principale.
  • De nombreux ingénieurs sont plus à l'aise avec le concept de branches, car ils existent dans tous les systèmes SCM. Mais des vues peuvent être inquiétant, si elles ont pas vu ce concept
+0

Merci Brian, je vais lire vos références. –

2

Je ne suis pas sûr commutation entre les vues/worspaces est facile à Perforce.

C'est facile. En supposant que vous utilisez la ligne de commande, créez un p4config.txt dans le répertoire racine de chaque spécification client (vue aka). Dans chaque p4config.txt, définissez la variable P4CLIENT sur le nom de la spécification client. Vous pouvez laisser les autres variables telles qu'elles sont.

Voici mon exemple p4config.txt:

P4USER=deepaknag 
P4PORT=SJCPperforce01:1666 
P4CLIENT=deepaknag_fbsd 

Réglez ensuite la variable d'environnement P4CONFIG comme suit:

export P4CONFIG=p4config.txt 

Maintenant, il utilise automatiquement le client-spec "correct" à chaque fois que vous changez de dossier client. Essayez d'émettre:

p4 info 

dans vos répertoires clients pour vérifier.


Ceci est également documenté dans Perforce Knowledge Base (fonctionne avec p4 pour moi).

Questions connexes