Meilleur contrôle de Version pour les développeurs
Je suis un développeur solitaire sur le moment, s'il vous plaît partagez vos expériences sur ce qui est une bonne VC programme d'installation pour un développeur solitaire.
Mes contraintes sont;
- Je travaille sur plusieurs machines et le besoin de les garder synchronisés
- Il m'arrive de travailler en mode hors connexion
Je suis actuellement à l'utilisation de Subversion(uniquement le client à un serveur distant), et qui fonctionne ok. Je suis intéressé par Mercurial et git DVCS, mais aucun de leurs cas d'utilisation du sens à ma situation.
EDIT: j'ai migré mon développement actif de Fossiles http://www.fossil-scm.org/ après la mise à l'essai avec un client. J'aime vraiment les caractéristiques de autosync mon référentiels(réduction accidentelle fourches), la documentation de soutien(à la fois de wiki et de l'embarqué et de version) qui prend en charge mon besoin de documenter le code et le projet dans les différents espaces, le plus facile à configurer l'outil de suivi, de nice, de contrôle d'accès, skinnable interface web et à l'aide de la communauté.
- Ce genre de question similaire a été posté dans ce forum par quelqu'un d'autre sur here
- Cette question a aidé stackoverflow.com/questions/97850/...
- Je n'aime pas VSS À TOUS. Cependant, il a un avantage que les autres n': Son système de fichiers de base. Donc, pour UN développeur, à la recherche de synchronisation à des endroits différents, en mettant un VSS db dans une mesh.com le dossier est un moyen rapide de se lever et courir
- Je suis également très heureux Fossiles pistes ou compile sur tout ce que j'ai essayé de dev sur: xp, vista, mac ppc, mac intel et Windows 7.
Vous devez vous connecter pour publier un commentaire.
Pourrais-je vous suggérer plutôt une nouvelle version de contrôle appelé fossiles.
Ce n'est pas un moi trop de projet, il est écrit par le Dr Richard Hipp, même mec qui fait SQLite. L'ensemble de l'espace de stockage est un fichier SQLite, il est donc très solide. Vous avez un wiki et un système de tickets intégré. Vous pouvez avoir plusieurs utilisateurs avec différents droits, de sorte que vous pouvez par exemple donner à vos utilisateurs un droit d'émettre des billets, mais de ne pas afficher le code source.
C'est assez simple, directe et il fonctionne comme un système distribué, ce qui signifie que vous pouvez cloner et passer localement et à distance.
Plus d'infos peut être vu sur http://www.fossil-scm.org/ et si vous regardez de près, vous voyez que tout le site est en fait fossiles.
Une chose qui m'a vraiment impressionné avec des fossiles, c'est que c'est juste un fichier, c'est tout. L'ensemble de fossiles programme est plutôt petite, mais vu le nom de l'auteur, qui n'est pas vraiment une surprise.
Et depuis votre espace de stockage est un fichier sqlite, il vous suffit de copier et vous disposez d'une sauvegarde.
Chaque personne va certainement vous dire que leur favori DVCS est le meilleur pour vous. Je vous dirais Mercurial est le meilleur! 😉
Mais c'est de la merde. Vous definitevely besoin d'un DVCS, mais essayez-les tous, ou au moins la plupart du temps utilisés, et de faire votre choix par vous-même. Le choix de la DVCS que vous en savez un gourou est également un choix judicieux, BTW. Je vous recommande d'essayer (ou la lecture de la documentation de l') au moins Mercurial, Git et le Bazar. SVK peut avoir la caractéristique souhaitable qu'il soit conçu pour interagir avec SVN, mais la dernière fois que j'ai vérifié qu'ils avaient méchant problèmes de performances. Git a aussi quelques SVN interaction plugin, autant que je sache.
De travail en mode hors connexion absolument de sens pour Git. Vous pouvez parcourir l'ensemble de votre histoire, faire des commits, faire de fusions, de créer des branches, essentiellement tout ce qui est lié à votre référentiel en mode hors connexion. En outre, vous pouvez définir un référentiel central qui est le "maître", c'est à vous de pousser tous vos changements de référentiel central. De cette façon, vous savez toujours où la dernière version du code est, mais vous obtenez également l'avantage d'être en mesure d'envoyer des modifications à partir d'un ordinateur à un autre si vous en avez besoin.
Récemment, j'ai converti tous mes 80+ dépôts Subversion vers Git, et je n'ai pas regardé en arrière.
Bazar: Voir le solo de cas d'utilisation et Bazar dans 5 minutes.
Surtout pour un usage hors-ligne, un système de contrôle de version distribué est le chemin à parcourir.
Subversion fonctionne très bien (surtout avec TortoiseSVN). Je ne pense pas que toutes les distribué des de CR ont un avantage dans un seul scénario de développeur.
Edit: je n'avais pas remarqué le "il m'arrive de travailler Hors connexion" partie quand j'ai d'abord répondu.
Dans ce cas, je suppose que vous devez poids de la complexité d'un DVCS avec le fait qu'il vous donne en mode hors connexion de l'histoire /révisions.
Je recommande toujours darcs pour cette situation (voici ma réponse à une question similaire) que sa ligne de commande l'interface utilisateur est un plaisir à utiliser, et la joie est ce que je veux de mon propre développement 🙂
Git est livré avec certains viable des Interfaces graphiques, mais j'ai trouvé ça trop lourd en comparaison à darcs lorsque je tape la ligne de commande à utiliser pour vos projets personnels.
Soit sauront satisfaire votre besoin de travailler hors ligne et ils sont à la fois facile à synchroniser les modifications avec.
Subversion nécessite l'accès à un référentiel centralisé. Si vous travaillez en mode hors connexion et de plusieurs machines, cela signifie que vous ne pouvez pas apporter des modifications hors connexion.
Un os à nu Unix solution serait de conserver un historique de travail à l'intérieur de la dir avec RCS, et de synchroniser le travail dir (y compris comme antécédent) entre les différentes machines à l'aide de L'unisson. Le principal inconvénient serait que, si vous passez machines, vous avez d'abord besoin de les synchroniser avant de commencer à commettre de nouvelles révisions. Si c'est un problème, vous meilleur look en un véritable DVCS.
Vous trouverez la réponse à la question que j'avais posée utile: alternative à VSS pour un one-man-show (l'armée de l'un?):
Alternative à VSS pour un one-man-show (l'armée de l'un?)
Vous devez essayer un DVCS (ou ce que j'appelle un peer2peer VCS). Je suis d'accord avec nowhereman. Ne perdez pas de temps avec svn et tous le doux fait vers elle pour qu'elle sorte de l'utile.
Un DVCS c'est plus intuitve que l'ancien et obsolète client-serveur de style. SVN ne sait pas ce qu'est un tag, ou une branche. Pour Svn tous sont juste des copies.
Par exemple: c'est tellement facile à mettre en œuvre une balise comme un synonyme d'un numéro de révision.
Dans la mercurial, un tag, c'est juste que. Vous ne pouvez pas garder le suivi des versions d'un tag comme vous pouvez le svn.
Lire ici dvcs guide pour commencer. Ensuite, vous pouvez utiliser svk, mercurial aka hg ou git. Mais merci de ne pas remonter dans le temps
Je suis un grand fan de contrôle de version distribué. J'ai joué avec git, mercurial, et bzr, et maintenant j'utilise git pour tous mes projets. Tous les trois de ces sont idéal pour une utilisation personnelle parce que c'est tellement plus simple que de créer un nouvel espace de stockage sur votre ordinateur. Vous n'avez pas à exécuter tous les serveurs.
Voici quelques idées pour le partage de votre dépôt sur plusieurs ordinateurs. 1) Utilisez le service hébergé comme github. Ce sont généralement gratuit pour les projets open source et à peu de frais, pour les projets commerciaux. Nous sommes à l'aide de github au travail. 2) Utiliser dropbox pour créer un internet partagé-disque sauvegardé que tous vos ordinateurs peuvent accéder. C'est gratuit pour les moins de 2 GO. (Si vous êtes sous Ubuntu, Ubuntu One est une autre alternative.) Mettez votre maître dépôt git sur dropbox et puis mettre dépôts locales sur chacun de vos ordinateurs. (Donc, dropbox joue le même rôle que github.) Il est totalement gratuit, vous permet de travailler en mode hors connexion facilement, vous permet de partager le référentiel avec d'autres développeurs, plus tard, si vous en avez besoin, et il est automatiquement sauvegardé.
Aussi, si vous voulez vraiment utiliser SVN, regardez une solution hébergée comme cvsdude (malgré le nom, ils fonctionnent SVN) plutôt que de courir votre propre serveur. Vous serez en mesure d'accéder à votre code à partir de n'importe où, et il ne vous coûtera ~5 à 10 dollars/mois.
Vault SourceGear est gratuit pour un développeur et est très bon.
je recommande assembla.com - ils fournir gratuitement svn , wiki et le trac. Ne peux pas obtenir mieux que cela!
Si vous êtes tout confort avec subversion, je vous suggère d'avoir un coup d'oeil à SVK