Question

Quel serait le meilleur système de contrôle de version à apprendre en tant que débutant au contrôle de code source?

Était-ce utile?

La solution

Mais rien de Visual Source Safe;de préférence, celle qui prend en charge les concepts de branchement et de fusion.Comme d'autres l'ont dit, la Subversion est un excellent choix, surtout avec le client TortoiseSVN.

Assurez-vous de vérifier (pardonnez le calembour) Eric Évier de la série classique de Contrôle de Source HOWTO articles.

Autres conseils

Je vous suggère de commencer par la Subversion, par exemple avec le 1-cliquez sur installer SVN.Essayez de rechercher DONC, pour "Subversion", et vous trouverez des tas de questions avec des réponses de ce point de bons tutoriels.

Bonne chance!

J'irais tout de suite pour Git.J'ai utilisé de la subversion avant, mais toujours senti que je faisais fausse route.Git fait sens dès le premier jour.

Ressources utiles:

Il y a quelques concepts de base qui, je pense, sont importantes pour apprendre:

  1. Check-in/check-out (évidemment)
  2. Des versions locales vsles versions du serveur
  3. Cartographie de la Liaison d'un espace de travail local à une distance de magasin ou de dépôt.
  4. Fusionner vos modifications dans un fichier qui contient des modifications de les autres.
  5. La ramification (ce qu'elle est, quand et pourquoi l'utiliser)
  6. Modifications de la fusion d'une branche en branche principale ou du tronc.

La plupart des modernes systèmes de contrôle de source exigent une certaine connaissance des questions ci-dessus, et devrait aider à vous faciliter leur apprentissage.Ensuite, vous avez distribué de contrôle à la source, dont je n'ai aucune expérience, mais est censé être assez complexe et peut ne pas être adapté pour un débutant.

Subversion est grand parce qu'il a toutes les fonctionnalités modernes vous voulez et est gratuit.

Git est également en train de devenir de plus en plus populaire et est un autre gratuit ou à très bas coût de remplacement de la Subversion.Les connaissances sur les concepts de branchement et de fusion deviennent critiques pour l'utilisation de Git, cependant.

Vous pouvez utiliser unfuddle comme un moyen simple et gratuit de faire des essais Git et Subversion.- Je l'utiliser pour héberger un couple de subversion pour certains de ces projets, j'ai travaillé dans le passé.

Je ne suis pas avancée et de contrôle de la source de l'utilisateur, mais je suis en apprentissage.Voici mon expérience avec contrôle de source de produits:

  1. Il y A longtemps, la société où je travaillais à l'époque a décidé d'utiliser le contrôle de source.Ils ont introduit le concept de développeurs et a obtenu eveyone disposé à lui donner un essai.Ils ont choisi d'utiliser du PVC, et mis en œuvre.Avant trop longtemps, les développeurs devraient coordonner leurs efforts pour verrouiller/déverrouiller les modules et les objets et nous n'avons vraiment pas voir beaucoup d'avantages.

  2. Quelques années plus tard, j'ai été jouer à la réalisation d'un projet open source et au moment rubyforge a été offrant des dépôts CVS.Je l'ai essayé et c'était à peine mieux que le PVC.Certes, j'ai été le seul à utiliser le référentiel.Je n'ai cependant devenir frustré quand j'ai essayé de réorganiser la structure de mes fichiers car je n'ai pas aimé la façon dont je l'avais initialement importés.Il n'a pas vraiment de travail dans le CVS.

  3. Quelques années après que je travaillais sur un autre projet personnel et mon fournisseur d'hébergement web offert facile à installer Subversion (SVN) référentiels.Il m'a fallu un peu de recherche pour l'obtenir en place et fonctionne correctement, mais une fois que je suis passé de la courbe d'apprentissage, je l'ai aimé.

  4. Pas longtemps après que j'ai réalisé que j'ai aimé avoir le contrôle de source et que mon travail actuel ne l'avez pas.Donc j'ai évangélisé, et après une longue période de temps, mon équipe de mise en œuvre de Source Sûre, car nous travaillons dans Visual Studio, et sont généralement une boutique Microsoft.J'avais hâte de l'utiliser, mais avant longtemps, j'ai découvert que j'étais en train de perdre des fichiers et que Visual Studio a été de mettre les choses au mauvais endroit, et que je devais travailler sur un projet pour un certain temps et puis aller à exporter mon travail à un autre endroit et de trouver que ce soit ne serait pas à l'exportation ou à l'exportation de certains des projets dans une solution.Cela m'a fait réaliser que même si je pensais que j'ai été en utilisant un "système de contrôle de version", la copie du code qui a été le plus sécurisé, robuste et complète était ma copie de travail.L'exact opposé de ce que la source de contrôle est censé faire.

  5. La semaine dernière, j'étais tellement marre de Source Sûre que je suis parti à la recherche.Après l'étude de quelques solutions, j'ai décidé d'essayer de git.Je ne vais pas dire que tout a été roses, depuis j'ai de nouveau eu quelques courbe d'apprentissage pour lui faire faire ce que je veux faire, Cependant, j'ai aimé assez pour convertir l'ensemble de mon travail et de projets personnels sur elle.Une des choses vraiment bien, c'est que je n'ai pas besoin d'un référentiel centralisé donc je peux l'utiliser sans passer par une tonne de paperasse à travailler pour l'obtenir installé.

Donc en bref je recommanderais git, j'utilise Mysysgit dans windows et il a l'avantage supplémentaire de me donner un shell bash.Sur Linux, vous pouvez simplement l'installer à partir de votre gestionnaire de paquets.Si vous n'aimez pas git, essayez de subversion.Si vous n'aimez pas l'un de ces, vous n'aurez probablement pas, comme CVS ou PVC soit.En aucun cas essayer de Source Sûre, c'est horrible.

J'ai trouvé http://unfuddle.com m'a sauvé vous embêter avec l'installation de SVN ou git.Vous pouvez obtenir gratuitement un compte là-bas et utilisez un de ceux - de plus, vous pouvez utiliser votre OpenID là.

Puis vous éviter d'avoir à se soucier du réglage de la ce et de se concentrer sur la façon dont vous allez l'utiliser!

La voûte de SourceGear.com est superbe.Il est gratuit pour les utilisateurs et offre un superbe VS 2005/2008 interface.Je l'adore!

rp

@Ian Nelson:

Je suis d'accord avec vous que la Source Sécuritaire est mauvais comme un système de contrôle de source, mais gardez à l'esprit que l'utilisation de Source Sûre, c'est beaucoup mieux que "le transport autour de disquettes" comme Joel Spolsky dit.

Pour un débutant, il peut ne pas être une mauvaise idée, étant donné que le coût de ne pas avoir de source de contrôle est beaucoup plus élevé.

Chaque outil a ses forces et ses faiblesses.C'est beaucoup une question de ce que vos exigences.Malheureusement, avec cette question, comme beaucoup d'autres, il n'est souvent pas le meilleur outil est sélectionné, mais le seul que quelqu'un est familier avec.Par exemple, si vous n'avez pas besoin de nombreuses branches et votre équipe est petite et locale, presque tous les vcs va faire le travail (à l'exception de SourceSafe).Les choses changent si vous avez besoin d'branches (qui, presque par nécessité signifie aussi que vous devez faire fusionne), votre équipe est distribué, vous avez besoin de fonctions avancées de sécurité (sous-traitants ne sont pas autorisés à l'ensemble de l'arborescence des sources), suivi des tâches, etc.Il y a aussi la question du coût de trois façons différentes:le coût des licences, le coût de l'entretien (certains outils sont si complexes, que vous, dans la pratique, ont besoin de quelqu'un pour contrôler les dépôts) et les coûts de formation.

Par conséquent, ce qui suggère un outil plutôt qu'un autre, c'est comme suggérant de ce qui serait le meilleur langage de programmation.

Juste quelques conseils:

  • StarTeam est la plus simple des outils de J'ai utilisé.Il fallait très peu de la formation.J'ai reçu une formation d'une journée depuis que je suis être le responsable.Ce maintien m'a fallu moins de 30 minutes par semaine.Utilisateurs de I "formés" par l'écriture d'une à deux pages de manuel et après que j'ai eu très peu de questions pour y répondre.
  • Continuus a l'autre bout de la échelle dans la mesure où la facilité d'utilisation est concernés.D'autre part des tâches de manutention était génial et il a offert un bon soutien pour la libération de gestion.La difficulté est que, même en tant que responsable de publication, je n'ai jamais pensé facilité de faire des communiqués de presse (c'était une fois que vous avez appris, mais qui a eu une quantité considérable de temps) devrait être plus important que le travail quotidien que font les développeurs.
  • La fusion et de la direction générale de la création diffère sauvagement entre les outils.Certains outils ce simple, comme git et ClearCase (bien que le dernier est très lent) certains fondamentalement vous forcer à faire l' fusion à la main.Si vous avez besoin de faire fusionne beaucoup, le coût peut monter haut.ClearCase était aussi cher dans tous les trois catégories mentionnées avant (même si il faut bien le dire, nous avons utilisé tous les trucs qui n'est pas nécessaire).Git d'autre part manque d'une bonne INTERFACE utilisateur et de certains concepts diffèrent de ce que vous pourriez être utilisé d'.Git caractéristiques de sécurité sont également défaut (gitosis les adresses de certains questions mais pas tous).
  • La plupart des outils que j'ai utilisés sont également très lent.Des outils comme les PVC/Dimensions a été juste lent, n'importe quoi (de base des choses comme l'ouverture d'un dossier dans le référentiel), certains très lente dans moyens plus spécifiques (comme ClearCase).

À partir des outils que j'ai utilisés, je voudrais sélectionner StarTeam si vos développeurs ne sont pas très expérimentés (et si vous ne me dérange pas de payer la licence, qui est assez cher) et git si vous avez quelques expérimenté vcs gars à bord, qui peut configurer l'environnement pour les autres gars.Mercurial ressemble également à une concurrente intéressante et semble avoir un peu mieux de l'INTERFACE utilisateur.

Continuus, PVC/Dimensions et ClearCase sont tout simplement trop lent, trop complexe et trop coûteux pour pratiquement n'importe quel projet.Si quelqu'un insiste sur la sélection de l'un de ces, je voudrais aller ClearCase.

Je n'ai pas utilisé de Subversion dont beaucoup semblent comme (pourtant, j'ai le sentiment que c'est sur le point de changer dans un avenir proche) ne peut donc pas commenter comment il se compare avec les autres outils que j'ai utilisé (généralement de construire et/ou le responsable de publication).

Comme pour le premier outil de choisir, problème avec Git, Bazaar et Mercurial, c'est qu'ils sont distribués vcs est.Ceci est différent du traditionnel modèle client-serveur où vous avez un référentiel central.Pour qu'apprendre des trucs, je vous recommande également la lecture sur les concepts.La ramification, par exemple, est quelque chose que vous pourriez ne pas comprendre correctement, juste en essayant vous-même (il existe différentes stratégies de la direction générale pour des situations différentes).En Plus, c'est très différent si vous êtes le seul à accéder au dépôt, les conflits de fusion par exemple ne serait pas un problème (vous pourriez obtenir pour les voir, mais vous pouvez facilement aussi les corriger, puisque vous connaissez le code dans les deux branches).Bien sûr, vous l'apprendrez au sujet de check-out, check-in, et que telle, mais je ne pense pas que ces questions sont particulièrement difficiles en premier lieu.

Ajouté problème avec vcs est qu'ils ont tendance à utiliser des termes différents.Dans StarTeam qui est par ailleurs facile à utiliser-elles une raison d'insister sur l'utilisation des termes "check out" et "vérifier et de les verrouiller".Ce que la plupart des gens pensent que le premier ne.Il y a une raison à cela (vous pouvez modifier les fichiers même si vous ne disposez pas d'un verrou exclusif), mais il serait encore faire beaucoup plus de sens d'appeler ces "Get" et "Vérifier" pour éviter la confusion.

Quoi que ce soit, mais je voudrais en savoir un système moderne comme git ou subversion moi-même.Mon premier VCS a été RCS, mais j'ai les bases.

Eh bien, si vous avez envie d'apprendre sur votre propre, je dirais que vous devriez aller avec quelque chose de gratuit, comme subversion.Si vous êtes une entreprise qui n'a jamais utilisé de contrôle à la source avant, ensuite cela dépend vraiment de vos besoins.

Ma première exposition a été CV avec WinCVS en tant que client.il a été horrible.Suivant a été Subversion, avec TortoiseSVN et de l'Éclipse de l'intégration.C'était intuitif, et céleste.Je pense que l'utilisation de CVS avec TortoiseCVS et Eclipse serait sympa aussi, bien que je préfère la façon SVN poignées de révision.L'ensemble du référentiel est versionné avec chaque chèque, pas de fichiers individuels.

Je recommande aussi la Subversion.Il ne prend pas trop de temps à mettre en place, il est gratuit, et il est vraiment un très bon livre disponible en ligne sur les bases ainsi que de certains sujets avancés: http://svnbook.red-bean.com/

Subversion avec tortoisesvn.(tortoisesvn parce que vous pouvez voir beaucoup de ce qui se passe visuellement et sera un bon point de départ pour la ligne de commande genre de choses.) Il y a des tonnes de documentation là-bas et plus vous aurez de chances de le voir au moins un point dans votre carrière.Presque toutes les entreprises, j'ai travaillé pour et interrogés avec des pistes SVN.

Si vous êtes à la recherche pour en apprendre un produit commercial tandis que la prise en main Perforce offre gratuitement un client et un serveur, le serveur supportant deux utilisateurs et cinq clients des espaces de travail.

À mon ancien lieu de travail, il a été utilisé religieusement non seulement pour le code par nos programmeurs, mais pour l'art des actifs et des niveaux de jeu, et de ma propre documentation.

Subversion est un bon endroit pour commencer.Il est très moderne et stable système de contrôle de version.Les meilleures ressources en ligne pour commencer à apprendre à propos de la Subversion serait Le Contrôle de Version avec Subversion.Il y a beaucoup de choix autant que le serveur et le client logiciels sont concernés.Personnellement, je préfère (pour environnement Windows).

  1. VisualSVN serveur

  2. TortoiseSVN shell-le client intégré et

  3. AnkhSVN Visual Studio Subversion Add-On

Encore une fois, avec Subversion, il y a beaucoup d'options disponibles.Aussi, il est en constante évolution système de contrôle de version (contrairement à obsolètes SourceSafe).Il peut être facilement intégré avec de nombreux génération automatique d'outils (CruiseControl, FinalBuilder) et bug/problème des systèmes de suivi (JIRA).

Si vous êtes à la recherche de l'état de l'art des systèmes de contrôle de version, rendez-vous pour Git(développé par Linus Torvalds).Mais si vous êtes totalement nouveau pour les systèmes de contrôle de version, je suggère de commencer avec subversion.

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