24 votes

Quels sont les avantages de Perforce?

Quels sont les avantages de Perforce?

J'aimerais avoir un aperçu de la façon dont Perforce peut mieux fonctionner dans une situation donnée, que, disons, svn.

Si vous avez de l'expérience avec les deux perforce et svn et vous ne croyez pas qu'il y ait des avantages, ou de croire que svn a des avantages sur perforce, j'aimerais savoir pourquoi, en tant que bien.

21voto

philsquared Points 13547

J'ai travaillé avec Perforce pendant des années, ainsi que Clearcase, Sourcesafe, RCS, PVCS, CVS et Subversion. Plus récemment, j'ai commencé à l'aide de GIT trop.

À partir de cette expérience, mon opinion est que, pour la plupart des fins, Perforce est le meilleur système de contrôle de version pour les environnements commerciaux. Bien que pas aussi simple, d'abord, comme de la Subversion, il a un certain nombre de fonctionnalités les plus puissantes, en particulier autour de la ramification et la fusion. Le "verrouillage par défaut" est généralement plus adapté à cet environnement.

Pour des trucs personnels, de petits projets de collaboration, de petites start-ups, ou des projets open source, je trouve Subversion est mieux adapté dans de nombreux cas. Ils ont des approches différentes, des façons différentes de travailler. Vous ne pouvez pas simplement en ligne droite sur une échelle et de dire lequel est le meilleur.

Cela dit je déteste ClearCase. ClearCase est généralement forcé vers le bas à partir de ci-dessus (c'est à dire une décision de gestion).

Pour beaucoup de cas où la Subversion atouts Forcément beaucoup de gens semblent préférer les systèmes distribués tels que GIT, Bazaar, Mercurial, ces jours-ci. De ce que j'ai vu de GIT ils pourraient bien avoir raison et je suis sûr que d'autres affiches seront attestent.

15voto

Tim Robinson Points 28696

L'un de Forcément de gros points de vente, c'est la vitesse. Le serveur assure le suivi de l'état des fichiers sur le client; par conséquent, les opérations comme "obtenez-moi le dernier état de l'depot" sont triviales -- le serveur sait déjà ce que les fichiers que vous avez, il peut envoyer la quantité minimale d'informations en retour.

Cet avantage présente aussi un inconvénient, en ce que le serveur et le client peut sortir de la synchronisation si vous modifiez des fichiers localement sans vérifier eux d'abord, déplacer des fichiers localement, sans la réalisation d'une intégration, ou de supprimer les fichiers en local.

Parce que le serveur Perforce envoie uniquement le strict minimum de données pour le client, Forcément fonctionne bien sur des liaisons lentes, comme une situation où un client dans le NOUS permet d'accéder à un dépôt à Londres. Cela dit, le Perforce protocole est relativement "bavard", donc il est sensible au ralentissement saturés, des liens.

12voto

sorin Points 23747

J'utilise perforce au travail tous les jours et je ne le recommanderais pas à personne. Je suis sûr que c' était peut-être le meilleur SCM pour les années, mais c'est le modèle de base est obsolète.

Perforce est peut-être le plus centralisé, système SCM j'ai jamais utilisé. D'imaginer qu'ils sont fiers de ne pas mettre en cache quoi que ce soit sur votre disque. Faire une synchronisation est ennuyeux parce que dans un grand nombre de cas, il ne va rien faire, à moins de ne pas forcer une synchronisation et une contrainte de synchronisation ne copiez tout le serveur de revenir à vous - si votre projet est de 10 go, il permet de copier tous les d'entre eux.

J'ai l'expérience précédente à l'aide de SourceSafe, CVS, SVN, Mercurial et git (de moins en moins les deux derniers).

Je pense que la plupart des open-source les Mec sont matures et vous pouvez choisir l'un de la. Si vous voulez quelque chose de centralisé aller pour SVN et si vous voulez quelque chose décentralisée d'utiliser Mercurial (j'ai eu de mauvaises expériences avec git sur Windows).

Certains autres problèmes que j'ai eu avec perforce:

  • ce que vous commettez est pas ce que vous obtenez de retour: par exemple, si vous avez commis une UTF16 fichier sur un Mac Intel et de synchronisation à partir d'un autre PPC Mac, vous aurez une autre UTF16 fichier car perforce est intelligent et ne secret vous le fichier pour le client octet de commande. UTF16-ÊTRE - UTF16-LE ?!
  • script perforce est 10x fois plus dur que d'autres outils.
  • si vous commencez à l'utiliser et de l'attacher à votre processus de script probablement vous allez mourir avec elle parce que tout est fait dans perforce façon et perforce façon :(
  • l'image qu'il est très facile de descendre un p4 serveur: il suffit de faire la synchro sur la racine du projet. Où je travaille, ce n'est pas autorisé, car il peut prendre la balle vers le bas! Il y a une observation script qui surveille le serveur perforce les processus et si l'un d'eux prend plus de x GO de RAM, il ne la tuer et de vous envoyer une notification. Oui, en faisant une simple commande sur le client peut créer un 3GB processus sur le serveur en 5 à 10 secondes.

8voto

Pieter Points 9200

Perforce a un peu différent du modèle que, disons, svn. Chaque fichier est toujours enfermé dans votre copie de travail, et vous devez les déclarer à perforce vous allez commencer à l'éditer. Cela a par exemple, l'avantage est que vous pouvez toujours tout de suite voir qui d'autre est de travailler sur un fichier.

Dans l'ensemble les différences avec d'autres SCM ne sont pas très énorme. Vous rencontrez Perforce dans de nombreux endroits, car à un moment il a été l'un des rares (sinon la seule) partiellement décent SCM qui a travaillé sur Windows et Mac.

Si je ne me trompe pas, vous pouvez l'utiliser gratuitement, avec un nombre limité de clients, de sorte que vous pouvez l'essayer sans trop de douleur...

7voto

Yuval Adam Points 59423

Personnellement, je méprise perforce. C'est l'interface utilisateur est horrible, compliqué, et tout simplement non intuitive. Il est bogué et se bloque souvent.

J'ai travaillé avec SVN avant (via Tortoise SVN) et ont trouvé que c'est beaucoup plus simple et conviviale.

Bien sûr, tout cela est à partir d'un point de vue des utilisateurs, probablement les Mec ont une perspective différente

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X