Qu`est-ce que git et pourquoi vous devriez utiliser le contrôle de version si vous êtes un développeur
En tant que développeurs web, beaucoup de temps, nous avons tendance à travailler sur les chantiers de développement local, puis il suffit de télécharger tout quand nous aurons terminé. Cela est bien quand il est juste vous et les changements sont petits, mais quand vous avez affaire à plus d`une personne travaillant sur quelque chose, ou sur un grand projet avec beaucoup de composants complexes, qui est tout simplement impossible. C`est quand nous nous tournons vers ce qu`on appelle le contrôle de version.
Contenu
Aujourd`hui, je vais vous parler d`un logiciel de contrôle de version open source appelée Git. Cela permet à plus d`une personne de travailler en toute sécurité sur le même projet sans interférer les uns avec les autres, mais il est tellement plus que cela aussi.
Pourquoi utiliser un logiciel de contrôle de version?
Tout d`abord, le nom doit donner. logiciel de contrôle de version vous permet d`avoir « versions » d`un projet, qui montrent les modifications apportées au code au fil du temps, et vous permet de revenir sur le cas échéant et annuler les modifications. Cette capacité seule - de pouvoir comparer les deux versions ou annuler les modifications, il est assez précieux pour travailler sur des projets plus importants.
Video: Git Tutorial - 16 - Getting Old Versions from the Repository
Vous avez probablement même fait vous-même à un moment donné, l`enregistrement des copies d`un projet à différents points afin que vous avez une sauvegarde. Dans un système de contrôle de version, les modifications seront enregistrées - un fichier correctif qui pourrait être appliqué à une version, afin de faire la même chose que la prochaine version. Avec un développeur, cela suffit.
Mais si vous avez plus d`un développeur qui travaille sur un projet? C`est alors l`idée d`un serveur de contrôle de version centralisée entre en jeu. Celles-ci ont été la norme depuis longtemps, de sorte que toutes les versions sont stockées sur un serveur central, et les développeurs individuels et la caisse télécharger les modifications sur ce serveur. Si vous avez déjà regardé l`historique des modifications d`une page Wikipédia, vous aurez une bonne idée de la façon dont cela fonctionne dans un scénario monde réel:
Les avantages d`un tel système est que plusieurs développeurs peuvent apporter des changements, et chaque changement peut alors être attribué à un promoteur spécifique. En revanche, le fait que tout est stocké sur une base de données à distance signifie qu`aucune modification ne peut être quand ce serveur va downlight et si la base de données centrale est perdue, chaque client ne dispose que la version actuelle de ce qu`ils travaillaient.
Cela nous amène à Git, et d`autres soi-disant systèmes de contrôle de version distribuée. Dans ces systèmes, les clients ne se contentent pas de vérifier la version actuelle des fichiers et travailler à eux - ils reflètent toute l`histoire de version. Chaque développeur a toujours une copie complète de tout. est toujours utilisé un serveur central, mais si le pire devait arriver, alors tout peut encore être restauré à partir de l`un des clients qui ont les dernières versions.
Git fonctionne spécifiquement en prenant des « instantanés » de files- si les fichiers restent inchangés dans une version particulière, il relie simplement les fichiers précédents - ce qui maintient tout rapide et maigre.
Il pourrait aussi vous intéresser d`apprendre que Git est utilisé pour gérer et développer le noyau linux de base - le bloc de construction de base sur laquelle toutes les distributions Linux sont construits.
Qu`est-ce Github?
Bien que vous pouvez lancer votre propre serveur local de Git, GitHub est à la fois un serveur distant, une communauté de développeurs, et une interface web graphique pour la gestion de votre projet Git. Il est libre d`utiliser jusqu`à 5 dépôts publics - qui est, quand tout le monde peut voir ou de la fourche de votre code - avec des plans à faible coût pour les projets privés. Je vous suggère fortement d`aller vous inscrire à un compte gratuit afin que vous puissiez commencer à jouer avec vos propres projets ou bifurquer quelqu`un d`autre.
Forker & Branching
Ce sont les concepts de base de l`expérience Git, donc nous allons prendre un moment pour expliquer la différence.
Vous avez probablement entendu le travail « fourchette » lorsqu`ils traitent avec Linux distros. Si vous êtes familier avec l`application media center Plex, vous le saurez était à l`origine une fourchette de la source ouverte similaire Xbox Media Center. Cela signifie simplement que, à un moment donné dans le passé, certains développeurs ont pris le code de XBMC, et a décidé de suivre leur propre chemin avec it- qui est devenu Plex.Aeon Nox 3.5: Thème Belle et personnalisable pour XBMCAeon Nox 3.5: Thème Belle et personnalisable pour XBMCConfigurez votre centre multimédia exactement comme vous le voulez. Aeon Nox 3.5 est la version la plus récente de ce qui est peut-être le meilleur thème pour XBMC, et il est une combinaison rare: belle ...Lire la suite
Ceci est bien sûr tout à fait permis lorsque le projet est open source - vous pouvez prendre le code, faites tout ce que vous voulez. Avec Git, si vous sentez que vos changements sont assez bons pour être annulées dans le projet « maître », vous pouvez faire une « demande de traction » à l`auteur, en leur demandant de retirer vos modifications dans leur projet d`origine. Cela vous permet d`avoir des centaines de milliers de développeurs travaillant sur un projet à tout moment, aucun d`entre eux doivent être neccessarily approuvés pour accès au code - ils copient simplement le code, apportez des modifications, et demande à être annulées dans le maître. Bien sûr, il est au propriétaire du projet d`origine si elles décident d`accepter vos modifications ou non.
Branching est quelque chose fait en interne sur un projet par les développeurs autorisés. Il vous permet de séparer facilement les problèmes ou caractéristiques spécifiques, et de travailler sur eux sans casser les fichiers maîtres. Une fois que vous êtes convaincu que votre succursale a abordé la question, vous fusionnez nouveau dans le maître. À tout moment, il peut y avoir autant de branches que vous aimer- qu`ils ne gênent pas les uns avec les autres. Vous pouvez également fusionner les changements entre les branches sans toucher le maître.
Voici un schéma d`un exemple de flux par Vincent Driessen:
La prochaine fois, nous allons voir comment mettre en place un exemple Git de travail et apporter des modifications de code dans les branches. Le contrôle de version est un sujet très vaste. Je n`ai donné la liste ici bref, mais en tant que développeur qui est utilisé pour simplement faire des changements et de les défaire si elles ne fonctionnent pas, le concept a soufflé mon esprit - je l`espère pour le vôtre aussi.
Video: Les logiciels de gestion de version 2/3 - le vocabulaire GIT
Êtes-vous un développeur expérimenté avec une expérience dans Git? Est-ce que vous débutez et pensez que vous aimeriez avoir un aller? Sound off dans les commentaires!