git - Prise en main de Version Control

Translate

Je dois implémenter le contrôle de version, même pour le développement que je fais à la maison. J'ai lu à quel point Subversion est géniale ces deux dernières années et j'étais sur le point de me consacrer à l'apprentissage de cela en parallèle jusqu'à ce que j'entende parler de Git comme le système de contrôle de version à venir.

Compte tenu de la situation, dois-je attendre et voir lequel l'emporte? Quels sont leurs avantages relatifs?

Un problème que j'ai remarqué avec Git est qu'il n'y a pas beaucoup d'interfaces graphiques complètes, ce qui est important pour de nombreux utilisateurs de mon équipe.

Aussi, cela ne me dérangerait pas des suggestions sur la façon de commencer avec l'un ou l'autre. (tutoriels, etc.)

This question and all comments follow the "Attribution Required."

Toutes les réponses

Translate

La chose la plus importante à propos du contrôle de version est:

COMMENCEZ JUSTE À L'UTILISER

Ne pas utiliser le contrôle de version est une idée horrible. Si vous n'utilisez pas le contrôle de version, arrêtez la lecture maintenant et commencez à l'utiliser.

Il est très facile de convertir

cvs<->svn<->git<->hg

Peu importe celui que vous choisissez. Choisissez simplement le plus simple à utiliser et commencez à enregistrer l'historique de votre code. Vous pouvez toujours migrer vers un autre (D) VCS ultérieurement.

Si vous recherchez une interface graphique facile à utiliser, consultezTortoiseSVN (Windows)etVersions (Mac)(Suggéré parcodage sans commentaires)


Éditer:

pix0r a dit:

Git a quelques fonctionnalités intéressantes, mais vous ne pourrez les apprécier que si vous avez déjà utilisé quelque chose de plus standard comme CVS ou Subversion.

Ce. Utiliser git est inutile si vous ne savez pas ce que le contrôle de version peut faire pour vous.

Modifier 2:

Je viens de voir ce lien sur reddit:Aide-mémoire Subversion. Bonne référence rapide pour la ligne de commande svn.

La source
Hobart Lee
Translate

Utilisez subversion, il est facile à configurer, facile à utiliser et dispose de nombreux outils. Tout futur système de révision aura une fonction d'importation à partir de SVN, donc ce n'est pas comme si vous ne pouviez pas changer si vos besoins augmentent.

La source
Evan Lee
Translate

leLivre Subversionest votre meilleur pari pour apprendre l'outil. Il existe peut-être d'autres didacticiels de démarrage rapide, mais le livre est la meilleure référence que vous trouverez.

Git a quelques fonctionnalités intéressantes, mais vous ne pourrez les apprécier que si vous avez déjà utilisé quelque chose de plus standard comme CVS ou Subversion. Je suis définitivement d'accord avec les affiches précédentes et je commencerai par Subversion.

La source
Translate

Si vous êtes nouveau dans le contrôle de version, lisez ceci:
Guide pratique du contrôle de la source

La source
Beck Lee
Translate

Optez pour SVN. Si vous n'avez jamais utilisé le contrôle de source auparavant, cela n'aura pas d'importance pour vous dans un sens ou dans l'autre.

En outre, il n'y a pas beaucoup d'apprentissage impliqué dans l'utilisation d'un système de contrôle de source. Si vous en apprenez un, vous pouvez facilement passer à un autre à une date ultérieure.

SVN est un excellent outil, et il devrait répondre à la plupart de vos besoins. Et depuis qu'il existe, il a un bon partage d'outils GUI (TortoiseSVN, par exemple).

Optez pour SVN.

La source
Morton Lee
Translate

Pour une explication conviviale de la plupart des concepts de base, voirUn guide visuel du contrôle de version. L'article est très convivial pour SVN.

La source
Tobey Lee
Translate

J'ai utilisé RCS, CVS, SCCS, SourceSafe, Vault, perforce, subversion et git.

J'ai évalué BitKeeper, Dimensions, arch, bazaar, svk, ClearCase, PVCS et Synergy.

Si je devais créer un nouveau référentiel aujourd'hui, je choisiraisgit. Les doigts dans le nez.

C'est gratuit, rapide et en développement actif.

Et vous pouvez l'utiliser comme client de n'importe quel référentiel subversion en utilisant git-svn.

Ça bascule.

La source
Meroy Lee
Translate

@ superjoe30

Qu'en est-il du contrôle de source sur votre propre ordinateur, si vous êtes le seul programmeur? Est-ce une bonne pratique? Existe-t-il des trucs ou astuces connexes?

Je trouve que git est en fait plus facile pour cela car vous n'avez pas besoin d'un serveur ou vous ne vous souciez pas de saisir des URL, etc. Vos éléments de contrôle de version ne vivent que dans le.gitrépertoire dans votre projet et vous allez simplement de l'avant et utilisez-le.

5 secondes d'intro (en supposant que vous l'ayez installé)

cd myproject
git init
git add * # add all the files
git commit

La prochaine fois que vous apporterez des modifications

git add newfile1 newfile2 # if you've made any new files since last time
git commit -a

Tant que vous faites cela, git vous soutient. Si vous vous trompez, votre code est en sécurité dans le joli dépôt git. C'est génial

  • Remarque: Vous pouvez trouver un peu plus difficile de sortir les choses de git que de les faire entrer, mais il est bien plus préférable d'avoir ce problème que de ne pas avoir les fichiers du tout!
La source
April Lee
Translate

D'après ma propre expérience, je ne recommanderais pas git comme introduction au contrôle de version. Je l'utilise depuis quelques mois maintenant, et j'ai l'impression qu'il est très puissant et - maintenant que j'ai partiellement la tête autour de lui - raisonnablement intuitif. Cependant, la courbe d'apprentissage est très raide, même si j'utilise le contrôle de version depuis des années. Il souffre également d'être trop expressif - il prend en charge de nombreux flux de travail et modèles de développement différents, mais le seul guide sur la "meilleure" façon de l'utiliser est quelques pages de profondeur dans une recherche Google, ce qui rend également difficile le choix d'un nouveau venu. vers le haut.

Cela dit, il est possible que partir d'une ardoise vierge avec git soit en fait plus facile - mon expérience VCS est entièrement avec un contrôle de version centralisé (CVS, SVN, Perforce ...) et une partie de ma difficulté (continue!) Avec git a été comprendre les implications du modèle distribué. J'ai jeté un bref coup d'œil sur d'autres DVCS comme Bazaar et Mercurial et ils semblaient être un peu plus adaptés aux débutants.

Quoi qu'il en soit, comme d'autres l'ont dit, Subversion est probablement le moyen le plus simple de s'habituer à l'état d'esprit du contrôle de version et d'acquérir une expérience pratique des avantages de VCS (restauration, branches, développement collaboratif, révision de code plus facile, etc.).

Oh, et ne commencez pas par CVS. Il est toujours utilisé dans la pratique et présente des avantages, mais à mon humble avis, il a trop de bizarreries historiques et de problèmes de mise en œuvre (commits non atomiques!) Pour être un bon moyen d'apprendre.

La source
Marcus Lee
Translate

Mon vote va à Subversion. Il est très puissant, mais facile à utiliser, et possède d'excellents outils commeÉcailleSVN.

Mais comme d'autres l'ont dit avant moi, COMMENCEZ JUSTE À L'UTILISER. Le contrôle de la source est une partie si importante du processus de développement logiciel. Aucun projet logiciel «sérieux» ne devrait s'en passer.

La source
Edwina Lee
Translate

Dans mon travail actuel, mon prédécesseur n'utilisait aucun type de contrôle de version. Il y a juste des montagnes de dossiers dans au moins 3 endroits différents où il a conservé tous ses projets. On peut s'attendre à ce que tout dossier de projet aléatoire trouve au moins un nom de dossier "projet (OLD)" et un nommé "projet"

Avec le contrôle de version, vous n'avez jamais à faire de copies de versions "sûres". Vous n'avez pas vraiment à vous soucier que votre IDE corrompe le fichier sur lequel vous travaillez (je vous regarde, REALBasic 5.5) car il est si facile de valider (Lire: Enregistrer) votre travail tous les jours.

Inutile de dire que j'ai installé le contrôle de version le jour après avoir découvert qu'il existait.

De plus, TortoiseSVN rend la validation dans la base de données aussi simple qu'un clic droit sur un dossier.

La source
Yehudi Lee
Translate

Essayez égalementsvn visuelpour votre serveur si vous souhaitez éviter tout travail de ligne de commande.

La source
Brook Lee
Translate

Si vous êtes sur Mac OSX, j'ai trouvé que http://www.versionsapp.com/">Versions était une interface graphique incroyable (gratuite) pour SVN.

La source
Ruby Lee
Translate

Git est supérieur à la subversion, mais il est un peu à la fine pointe.

Je dirais, si vous ne faites que commencer, sautez sur le bord; créer un compte gratuit @http://github.com

Ils ont du matériel pédagogique sur place pour configurer et utiliser git.

La source
Payne Lee
Translate

N'attendez pas. Choisissez-en un et allez-y. Tous les systèmes auront leurs avantages et leurs inconvénients. Votre alimentation pourrait s'éteindre, votre ordinateur se fait voler ou vous oubliez d'annuler un changement majeur et tout votre code est grillé en attendant de voir qui sortira victorieux.

La source
Brady Lee
Translate

Il n'est pas si difficile de basculer entre les systèmes de contrôle de version. Comme d'autres l'ont mentionné, l'important est de commencer à utiliser n'importe quoi dès que possible. Les avantages de l'utilisation du contrôle de source par rapport à la non-utilisation du contrôle de source l'emportent largement sur les avantages différentiels entre les différents types de contrôle de source.

N'oubliez pas que quelle que soit la version du contrôle de code source que vous utilisez, vous pourrez toujours effectuer une conversion par force brute vers un autre système en déposant les fichiers de votre ancien système sur le disque, puis en important ces fichiers bruts dans le nouveau système.

De plus, se familiariser avec les principes de base du contrôle de code source est une compétence très, très importante à avoir en tant que développeur de logiciels.

La source
Bernice Lee
Translate

Utilisez TortoiseSVN (version.app si sur mac). Installez simplement et partez. Si vous avez besoin d'un endroit pour héberger votre code, regardezhttp://beanstalkapp.com/

La source
Jerome Lee
Translate

SubVersion est le meilleur choix pour vous, comme l'a souligné Karl Seguin, passer à un autre système de gestion des versions ne serait pas un problème. SVN a également des GUI très faciles à utiliser du côté client (TortoiseSVN).

http://www.snee.com/bobdc.blog/2007/08/getting_started_with_subversio.html http://dojo.jot.com/WikiHome/Getting%20Started%20With%20Subversion

La source
Eden Lee
Translate

Si vous choisissez d'utiliser subversion et que vous souhaitez héberger votre propre serveur svn, il existe un serveur basé sur Windows très agréable et simple appelé serveur VisualSVN. Cela cache la complexité de la configuration d'un serveur Apache, vous passez simplement au suivant. La configuration utilisateur est gérée avec une interface Web, au lieu d'une configuration

http://www.visualsvn.com/server/

utiliser un haricot de service public est probablement plus facile, mais certaines personnes aiment avoir leurs propres référentiels, que ce soit pour la vitesse ou la sécurité

La source
Molly Lee
Translate

Quand j'ai décidé que je devais utiliser un système de gestion des versions de code, j'ai cherché de bons tutoriels sur la façon de commencer mais je n'en ai trouvé aucun qui puisse m'aider.

J'ai donc simplement installé le serveur SVN et Tortoise SVN pour le client et j'ai plongé dans le deepend et je n'ai pas appris à l'utiliser en cours de route.

La source
Gemma Lee
Translate

Commencez à utiliser SVN pour votre travail réel, mais essayez de prendre le temps de jouer avec Git et / ou Mercurial. SVN est raisonnablement stable pour la production, mais vous serez finalement confronté à un scénario dans lequel vousavoir besoinun SCM distribué, à partir duquel vous serez correctement armé et les nouveaux systèmes seront suffisamment matures.

La source
Omar Lee
Translate

Ouais, SVN de préférence, sauf si vous avez vraiment besoin des fonctionnalités particulières de git. SVN est déjà assez dur; Il semble que git soit plus compliqué à vivre. Vous pouvez obtenir des svn hébergés par des personnes commeHaricot- à moins que vous n'ayez des Linux en interne, je le recommande vraiment. Les choses peuvent mal tourner très facilement et c'est bien d'avoir quelqu'un d'autre dont le travail est de le réparer.

Il y a un excellentDidacticielsur le contrôle des révisions d'Eric Sink qui vaut la peine d'être lu quel que soit le système que vous utilisez.

La source
Stan Lee
Translate

superjoe30 écrit:

Question connexe (peut-être que les réponses peuvent être modifiées pour répondre également à cette question):

Qu'en est-il du contrôle de source sur votre propre ordinateur, si vous êtes le seul programmeur? Est-ce une bonne pratique? Existe-t-il des trucs ou astuces connexes?

J'utilise SVN pour tous mes projets personnels. J'ai commencé par exécuter svn sur ma machine personnelle, mais j'ai finalement migré vers Dreamhost. Leurs forfaits d'hébergement qui incluent Subversion sont assez raisonnables.

La source
Translate

Si sur une boîte de fenêtres une slution rapide et sale est CVSNT. Facile à utiliser, il suffit de le configurer et fonctionne très bien.

Je préfère moi-même SVN mais c'est un bon pour une utilisation rapide.

La source
Susan Lee
Translate

Je choisirais définitivement SVN plutôt que CVS, ne serait-ce que parce que les gens qui ont appris le contrôle de source en utilisant CVS ont tendance à utiliser "svn delete" puis "svn add" au lieu de "svn move". Ce qui rend plus difficile la recherche de toutes les révisions précédentes d'un fichier spécifique. Et vous pouvez toujours passer à l'utilisation de git-svn. Personnellement, je pense que c'est plus facile à apprendre que hg, mais vraiment leprincipaleLa raison d'utiliser SVN est qu'il est largement devenu le système de contrôle de version de facto du logiciel Open Source.

Si jamais vous prévoyez d'apprendre / d'utiliserDil est presque obligatoire d'accéder aux référentiels tiers, commeDSource.

La source
Natividad Lee
Translate

@ superjoe30 Oui, absoluteley. Une fois que vous commencez à utiliser le contrôle de version, vous ne revenez jamais en arrière. Je l'utilise pour tout, même pour mon dossier "home".

@Orion Edwards Subversion ne nécessite pas de serveur. Vous pouvez accéder directement à un référentiel local (via un client, bien sûr), et aucun processus serveur n'est impliqué.

La source
Herman Lee
Translate

Utilisez simplement TortoiseSVN, et vous pouvez vivre même sans connaître les commandes Subversion réelles ... Mais c'est mauvais. Heureusement, il y aura toujours une «excellente occasion» de les apprendre par cœur - lorsque votre dépôt inestimable est corrompu pour la première fois.

Oui, ça arrive.

La source
Simon Lee
Translate

Comme mentionné à plusieurs reprises ailleurs, Just Do It. J'ai pu démarrer à partir de zéro avec Subversion sous Windows en un rien de temps en lisant le guide de démarrage rapide dans le livre rouge. Une fois que j'ai pointé TortoiseSVN vers le référentiel, j'étais en affaires. Il m'a fallu un certain temps pour obtenir les points les plus fins, mais c'étaient des bosses mineures à surmonter.

Je suggérerais d'installer le service Subversion au lieu d'utiliser les URL file: //, mais c'est surtout une préférence personnelle. Pour un référentiel stocké sur votre machine de développement, file: // fonctionne correctement.

La source
Juliet Lee
Translate

Par expérience personnelle, svn serait ma recommandation. Vous pouvez même utiliser un service commeHaricotqui offre des comptes gratuits (avec des limites évidemment, mais suffisantes pour tout petit projet) pour tester les eaux. Mais comme d'autres l'ont dit, git est supérieur et vaut probablement la peine d'être examiné.

La source
Rod Lee
Translate

Un conseil majeur pour faciliter la configuration d'un serveur SVN dès maintenant est d'utiliser une appliance virtuelle. C'est-à-dire une machine virtuelle sur laquelle Subversion est préinstallée et (principalement) pré-configurée - à peu près une chose plug & play. Tu peux essayerici, icietici, ou essayez simplement de rechercher Google sur "appareil virtuel subversion".

La source