Vous utilisez le contrôle de version pour le développement domestique?


138

Jusqu'à présent, j'ai développé mes projets personnels et scolaires à la maison sans utiliser aucune forme de logiciel de contrôle de révision pour gérer mes modifications et autres.

Ma question est la suivante: dans quelle mesure est-il faisable d'utiliser une application de contrôle de version (comme TortoiseSVN ) pour des projets personnels que je fais pour moi-même (et même des projets scolaires)?

Cela vaut-il la peine de s'enregistrer, de valider les modifications et toute cette routine, juste pour les `` projets domestiques '' au lieu de simplement faire des sauvegardes manuelles?

Liens :


2
Il est beaucoup plus facile d'utiliser le contrôle de source que de faire des sauvegardes manuelles! Il est peut-être plus facile d' apprendre à faire des sauvegardes manuelles que d'apprendre à utiliser le contrôle de code source.
yfeldblum

1
Je peux recommander VisualSVN, très simple d'utilisation. Et leur serveur subversion est gratuit :) ( visualsvn.com )
Svish

Utilisez plutôt un serveur hébergé, vous n'obtenez aucune maintenance + sauvegarde. J'utilise Unfuddle: stackoverflow.com/questions/430742/…
ripper234

Réponses:


191

Complètement.

Crédits également à http://blogs.embarcadero.com/nickhodges/2010/04/23/39416 :

  • Parfois, nous faisons des erreurs stupides. Avoir un filet de sécurité de contrôle à la source est un must.
  • Marquez les jalons importants. Même dans le développement domestique, vous souhaiterez peut-être marquer un ensemble de fichiers et de révisions comme étant une version de logiciel spécifique.
  • Vous vous formez à votre vie professionnelle. Mettre dans votre tête la méthodologie de travail associée à l'utilisation du contrôle de source vous prépare professionnellement.
  • Efficacité du stockage. Les systèmes de contrôle de source actuels stockent les révisions comme une différence delta par rapport à la révision précédente. Cela signifie qu'il est plus efficace sur le disque car le fichier entier n'est pas stocké mais uniquement les différences.
  • Vous avez l'historique de toute votre arborescence source. Vous pouvez voir rapidement ce qui a été changé et quand a été changé. Comparez les fichiers de différentes révisions et fusionnez facilement.
  • Vous pouvez vous connecter pour expérimenter. Si vous avez des expériences en tête, vous pouvez créer une branche (une nouvelle ligne de développement indépendante) et la tester. Au final, si vous êtes satisfait des résultats, fusionnez-les dans la HEAD (ligne de développement principale). Vous obtenez tout cela gratuitement sans avoir à créer une copie et bénéficiez des mêmes avantages en utilisant le contrôle de code source, même pendant les expériences.

13
Juste une chose à ajouter: à condition que le système de contrôle de version se trouve sur une machine distante, il fournit une simple sauvegarde en ligne de votre travail.
NotMe

Je suis complètement d'accord. Chaque fois que vous devez profiter d'une seule de ces fonctionnalités, vous avez déjà récupéré le coût minime de l'utilisation du contrôle de code source.
Chris Farmer

La puce 4 ne s'applique pas à git. git est optimisé pour les performances de fusion, et le stockage des différences n'est pas bénéfique à cet objectif. ces jours-ci, on suppose généralement que vous disposez de suffisamment d'espace disque pour votre code source. Cependant, tous les autres points sont des raisons d'utiliser n'importe quel contrôle de source et git les satisfait bien sûr tous.
SingleNegationElimination

Encore une fois, je recommande git, en particulier pour les points 2. 5. et 6. git a une très belle interface pour le balisage, le branchement, la fusion, etc. et certains des outils graphiques tels que qgit ou gitk permettent de voir très facilement comment tout votre les branches s'emboîtent ... c'est aussi un jeu d'enfant de transformer votre répertoire de travail actuel (non versionné) en un répertoire git avec 3 commandes: git init, git add., git commit
David Claridge

Si votre projet personnel est suffisamment important pour que le point 4 (efficacité du stockage) compte, vous avez certainement besoin d'un contrôle de source!
Tikhon Jelvis

31

Cela en vaut la peine.

Notez que vous n'avez pas non plus besoin de configurer un serveur SVN à part entière. Vous pouvez simplement créer un référentiel dans le système de fichiers local et vous connecter avec la syntaxe d'URL file: //. Cela signifie que vous n'avez pas à vous soucier de la configuration d'un démon SVN (ce qui est probablement excessif pour un projet à un seul utilisateur)

Vous pouvez également envisager des options plus légères telles que git qui conservent tous les fichiers de travail localement sans même avoir à créer un référentiel séparé. Git vous donne également quelques options supplémentaires pour configurer votre contrôle de source sur la piste.


1
J'ai récemment essayé git parce qu'un projet que je suivais l'utilisait. Je suis immédiatement passé à git pour mes projets personnels et professionnels dès que j'ai vu à quel point c'était simple et rapide . Hautement recommandé.
Dave Sherohman

8

L'utilisation du contrôle de code source est également utile à des fins de sauvegarde. Si vous archivez toujours tout, vous pouvez sauvegarder tous vos projets de code source en sauvegardant tous vos référentiels. Si vous avez plusieurs machines, vous n'avez pas à vous soucier de l'emplacement de la dernière version de votre code - c'est sur le serveur de référentiel.


6

J'ai gardé toute ma thèse de maîtrise sous contrôle de code source - à la fois le code et la thèse elle-même - donc je suis un fervent défenseur de faire cela, et pas seulement pour le code.

Pour les projets individuels, le principal avantage est la liberté de changer les choses et d'expérimenter, sachant que vous pouvez toujours revenir à la version précédente si cela ne fonctionne pas. Et cela vous donne des sauvegardes implicites de votre travail (assurez-vous simplement que votre dépôt svn est au moins sur un disque dur différent de votre travail principal)


5

Absolument, ça vaut le coup. Cela vous donne la possibilité d'essayer des refactorisations folles et folles, puis de les supprimer facilement si elles ne fonctionnent pas. Il met également en place de bonnes habitudes pour si / quand vous travaillez plus en collaboration avec un groupe.

Avec Subversion (au moins), vous n'avez même pas besoin d'avoir un "serveur" - un simple répertoire peut servir de référentiel si vous y accédez avec des URL de type "file: //". Il existe même un livre gratuit qui contient à peu près tout ce que vous devez savoir pour commencer:

http://svnbook.red-bean.com/nightly/en/index.html


4

Je trouve qu'il est extrêmement utile d'avoir une configuration de serveur SVN parce que je me retrouve à revenir sur des révisions et d'autres projets «à jeter» parce que je me suis souvenu d'une fonction ou d'une façon de faire quelque chose que je pourrais utiliser maintenant. Ayant le serveur SVN, je sais que le code est stocké chez moi et que je peux le récupérer plus tard.


4

Le contrôle des révisions est excellent car il vous permet d'être plus expérimental, sachant que si vos expériences échouent, vous avez quelque chose sur quoi vous rabattre.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.