Utilisation de Git dans un environnement d'entreprise [fermé]


24

Git est un excellent système de contrôle de version. Si nous excluons le fait qu'il n'a pas une excellente prise en charge de l'interface graphique, il est vraiment bon et rapide. Mais les contrôles source comme Clearcase prennent en charge les clients d'entreprise. Les entreprises investissent énormément pour les serveurs de contrôle de source et licesense.

Récemment, la plupart des grandes entreprises comme Google adoptent Git par rapport à un autre système de contrôle de version. Mais cette société dispose d'un solide groupe open source qui fournit constamment le développement et le support de l'outil (ils pourraient même avoir une version personnalisée de Git). Dans le même temps, les grandes entreprises ne se soucient pas vraiment d'adopter des projets open source et de les rendre pertinents pour eux.

  • Git est-il vraiment un outil fiable pour l'environnement d'entreprise, en particulier sur la plate-forme Windows?
  • Le support est en question pour Git car c'est un produit open source.
  • Y a-t-il une entreprise qui fournit des solutions et du support? Quels sont les coûts du serveur par rapport aux autres contrôles de version comme Clear-case?

2
Je ne suis pas au courant que Google a adopté git, si j'ai bien compris, il a opté pour Mercurial. Et vous devrez aussi me convaincre d'autres grandes entreprises - avez-vous des exemples?
Benjol

4
A un grand support graphique. Choisissez simplement un bon système d'exploitation.

2
@Benjol - Ce fil pourrait vous donner un aperçu. quora.com/…
sarat

1
@sarat, je sais que Twitter vaut beaucoup d'argent, mais je ne le classerais pas comme une grande entreprise. // Je ne savais pas que code.google.comgit était pris en charge, c'est une toute nouvelle nouvelle , et je ne suis pas sûr que vous puissiez appeler cela adopter git par rapport aux autres contrôles de version. [À l'origine] ( code.google.com/p/support/wiki/DVCSAnalysis) , ils ont clairement décidé pour Mercurial over git
Benjol

@Benjol En général, je ne peux pas le dire, mais le dépôt public de goyaves vient de passer à git .
maaartinus

Réponses:


37

GitHub n'est PAS un contrôle de version - il "héberge" le système de contrôle de version appelé "Git". Mis à part le jeu de mots, c'est une différence très importante - sachez-le bien.

En ce qui concerne l'utilisation en entreprise, je peux vous dire que git est aussi intelligent (et pratique et meilleur) que quelque chose comme SVN. Et, vous pouvez choisir une stratégie de contrôle de version (workflow) appropriée en fonction de la taille et de la portée du projet (et de votre équipe). Les systèmes non distribués ne peuvent pas vous offrir cette flexibilité.

entrez la description de l'image ici

Pour Windows, consultez Msysgit ou Visual Studio Extensions for Git - git fonctionne très bien sous Windows. De plus, les utilisateurs de Windows regardent cette série de formation de TekPub - c'est tout Windows.

UPDATE [février 2013] pour commencer avec git dans visual studio

Votre question n'est pas rare, et vous pouvez la rechercher sur Google et obtenir beaucoup de texte vous expliquant pourquoi et comment (et si) utiliser git dans l'entreprise.

Vous n'aimez toujours pas Git? Regardez un autre DVCS appelé Mercurial .


12
Msysgit n'est pas un vrai citoyen Windows. Cela fonctionne très bien, mais n'est pas à 100% natif.
Yann Ramin

+1 pour le point sur certains aspects importants de Git. Bien que @greengit ait souligné les options possibles pour utiliser Git sous Windows, il est loin d'être aussi intégré que, disons, SVN.
tehnyit

Nous utilisons Eclipse qui a obtenu un bon support git.

1
Je pense que la gitolite (ou similaire) mérite une mention ici. Beaucoup de personnes de sécurité comme le local, fermé et en option de contrôle d'héberger le repo localement.
Nic

2
@YannRamin: Msysgit est définitivement un vrai citoyen Windows et est 100% natif. Il est livré avec un shell Unix qui utilise des conventions légèrement différentes, mais c'est le shell, pas git. Vous pouvez utiliser Msysgit à partir de cmd.exe ou tout autre processus Windows comme n'importe quelle autre application native. (Cygwin est différent, mais Msys n'est pas cygwin)
Jan Hudec

16

+1 Mercurial.

Mercurial est cool, facile, possède de nombreuses interfaces utilisateur conviviales et se sent plus professionnel. Je n'ai jamais compris pourquoi Git avait un tel battage médiatique, alors que d'autres grands sont dans l'ombre. Mercurial est également supporté par le code google, bitbucket.org (l'équivalent de github), eclipse ... Je l'utilise depuis deux ans et j'en ai toujours été satisfait.

Edit février 2014:

En attendant, Git a pris une telle avance que je le conseillerais plutôt que mercurial. Il y a trois ans, Mercurial était à mon humble avis plus poli, plus propre, meilleur. Cependant, le battage médiatique était du côté de Git et l'élan qu'il a gagné depuis lors en fait clairement le gagnant. C'est désormais la norme de facto en raison de son immense communauté.


Git est beaucoup plus puissant en termes de manipulation de l'historique. Beaucoup de gens choisiront de fusionner les succursales localement, puis de les rebaser en une seule branche principale avant de passer au référentiel principal / public; de cette façon, l'histoire à long terme reste très propre. Pour autant que je sache la dernière fois que j'ai utilisé HG, Mercurial ne prend pas en charge ces types de modifications de l'historique. En général, git dans Windows craint; les meilleurs outils gui (git-cola, gitk) pour l'utiliser ne peuvent être trouvés que sur Linux.
Evan Plaice

1
Je dirais à peine que Git a réussi à cause du battage médiatique: la dernière fois que j'ai vérifié, le format backend de Mercurial était basé sur delta et aussi sujet à la corruption que SVN ou CVS. Le modèle fondamental de Git, quant à lui, est principalement en écriture seule avec des changements atomiques. C'est juste une solution beaucoup plus solide techniquement.
Stuart P. Bentley

@ StuartP.Bentley: qu'entendez-vous par corruption?
dagnelies

Arrêter soudainement un processus au milieu de la copie, du déplacement, de l'écriture, sur disque ou réseau: dans Git, cela ne créera que des objets immédiatement reconnaissables comme des ordures (car le contenu ne correspond pas au hachage), et même si vous perdre quelque chose à mi-chemin au milieu, vous pouvez vérifier ce que vous avez obtenu et remonter les choses à partir de là.
Stuart P. Bentley

Pendant ce temps, les formats basés sur delta qui conservent toutes leurs informations sur les modifications dans un seul fichier, comme Mercurial, peuvent avoir des accidents mineurs (supprimer une ligne qui décrit une modification, par exemple) qui cassent le fichier de telle manière que, comme Humpty Dumpty , il est impossible de remonter.
Stuart P. Bentley

8

Je sais que https://github.com/ fournit un certain soutien en ce qui concerne les référentiels privés pour les entreprises

Plus précisément, ils fournissent un service appelé installation de pare-feu http://fi.github.com/ Ils prétendent fournir une assistance mais n'ont aucun détail publié en ligne et je ne les ai jamais utilisés.

Les coûts sont de 5000 $ pour 20 personnes par an.


-1 ne répond pas du tout à sa question
MattyD

13
Il a demandé des sociétés qui fournissent des solutions et un soutien. Github a une solution d'hébergement git d'entreprise spécifique pour les entreprises. Cela ne répond pas à la première question. Cela répond en quelque sorte à la deuxième question. Cela répond à la troisième question.
c00w

Wow, quand le prix de FI a-t-il changé? La dernière fois que j'ai vérifié, c'était quelque chose comme 200-250 $ / mois et maintenant c'est le double oO
wildpeaks

8

J'utilise à la fois Git et Mercurial sur Windows, et les deux sont plus qu'utilisables. Je pense que les outils GUI pour Mercurial sont meilleurs, donc si votre équipe est habituée aux outils visuels, cela peut être mieux adapté. J'ai cependant tendance à utiliser la ligne de commande - pour moi, c'est plus logique.

D'après mon expérience, les deux sont à l'épreuve des balles. Vous n'avez pas besoin de «soutien» en tant que tel, bien que je sache que beaucoup d'entreprises aiment l'avoir.

Je suis sûr qu'il y en a d'autres, mais cela vaut la peine de jeter un coup d'œil à Kiln , qui est une solution mercuriale hébergée.

Veuillez noter que, quel que soit votre chemin, les DVCS sont très différents des VCS traditionnels. À mon humble avis, ils sont supérieurs dans presque tous les domaines, mais cela peut prendre un certain temps pour s'y habituer.


2
cela peut prendre un certain temps pour s'y habituer. // Je me souviens à quel point j'ai détesté Git pendant ces deux longs jours d'adaptation de SVN.
c69

6

git est étranger aux développeurs Windows. Ce n'est pas un vrai citoyen de première classe. Cela fonctionne bien, mais c'est avant tout un outil Linux. Par exemple, le modèle de serveur de git nécessite à peu près des connexions SSH pour la sécurité.

Le support est une question, et il y a des entreprises qui peuvent fournir, généralement accompagnées d'une solution hébergée.

Git est connu pour ne pas nécessiter d'énormes serveurs - comme les référentiels évoluent avec plus de capacité io et la vitesse est toujours importante, mais comme la plupart des opérations se produisent uniquement sur votre ordinateur, les exigences du serveur sont d'un ordre de grandeur inférieures à quelque chose comme Clearcase.

Pour ce que ça vaut, notre entreprise pas tout à fait d'entreprise de moins de 100 est un grand utilisateur de git, sur Windows, avec des projets Java et C.


1
Bien qu'il ait fallu beaucoup de manipulations et de fouilles pour obtenir de la documentation, j'ai réussi à faire fonctionner GIT avec l'authentification HTTP Basic sur SSL, soutenue par un serveur LDAP.
DoubleMalt

1
Méfiez-vous des espaces / des fins de ligne si vous prévoyez de porter quoi que ce soit sur Linux. Cela peut devenir moche si vous n'êtes pas vigilant dès le départ.
Evan Plaice

Git est maintenant intégré à VS 2013 et supérieur. MS en a fait un citoyen de première classe.
Clay Smith

5

Git est très différent de Clearcase, donc le défi pour vous sera probablement de savoir comment migrer en douceur vos développeurs (et d'autres utilisateurs) vers une autre façon de travailler avec le code source et les fichiers. Selon l'expérience de vos utilisateurs et la profondeur d'intégration de Clearcase dans votre entreprise, cela peut nécessiter beaucoup de formation et de désapprentissage.

Ma suggestion initiale est d'essayer git dans un projet pilote et de voir comment cela fonctionne pour votre équipe. Obtenez un référentiel sécurisé sur github et vous êtes prêt pour le pilote.


5
  • Git est-il vraiment un outil fiable pour l'environnement d'entreprise, en particulier pour la plate-forme Windows?

Nous serons bientôt à un fort oui avec celui-ci. Atlassian a récemment fait de grands pas vers cet objectif avec la sortie de Stash 1.3 .

  • Le support est une question pour Git car c'est un contrôle de version open source.

Il existe un solide réseau de soutien d'utilisateurs avertis de Git offrant des conseils gratuits et divers groupes LinkedIn (Git Version Control System). Une recherche rapide sur Google peut généralement aider avec la plupart des exigences. Pour les grandes entreprises, il existe également aujourd'hui des options de support commercial git.

  • Des entreprises sont-elles là pour fournir des solutions et du support? Combien coûte le serveur par rapport à d'autres contrôles de version comme Clear-case?

Il existe un certain nombre d'entreprises qui proposent désormais une assistance fiable et dédiée à Git. Clearvision et #goGit pour en nommer un.


Le lien Stash est rompu un an et demi plus tard. Je l'ai trouvé ici: atlassian.com/software/stash

1

Sur le lieu de travail de mon entreprise, j'ai travaillé sur le soutien à l'intégration d'une équipe dans Mercurial (un outil similaire à git) en face de ClearCase.

Nous avons choisi hg in party parce qu'il est conçu autour de l'immuabilité, ce qui est important pour nos objectifs commerciaux. De plus, comme il est écrit en Python, il fonctionne très bien sous Windows. Git a la réputation d'être un jeu faible sur Windows, et mon expérience en est le reflet. (Je suppose que les outils sont meilleurs maintenant, je n'utilise plus assez Windows pour vérifier. :-)).

L'expérience a été généralement positive, la plupart de nos inconvénients étant liés aux sous-dépôts et les étranges indirections qui y sont liées. Une autre chose est que le stockage des métadonnées est inexistant en hg; d'autres solutions doivent être développées pour gérer cela.

Si je devais recommander une solution d'entreprise pour un travail "prêt à l'emploi" pour les développeurs Windows, je recommanderais d'étudier Kiln et GitHub Firewall .

Je sais que cela ne répond pas directement à votre question. Mais permettez-moi de le dire ainsi, si vous êtes habitué à ClearCase, je m'attends à ce que git soit d'un ordre de grandeur plus facile à former, à implémenter et à administrer.


1

Git et Mercurial peuvent être utilisés dans des environnements d'entreprise. Dans une certaine mesure. Certaines organisations ont des exigences supplémentaires qui ne sont actuellement pas remplies par git, comme un contrôle d'accès plus strict de sorte que seuls des utilisateurs spécifiques ont un accès (en lecture) à des fichiers spécifiques dans le référentiel ou comme des interfaces d'audit dont l'accès peut être suivi. Certains systèmes d'entreprise commerciaux ont également une intégration plus approfondie avec la gestion des systèmes informatiques, comme les solutions de sauvegarde d'entreprise.

Git n'est pas non plus efficace pour garantir que l'historique est conservé - par défaut, il permet des poussées forcées écrasant entièrement l'historique du projet.

Les grandes organisations rencontrent parfois des problèmes de mise à l'échelle. Voici un cas que Facebook a eu: http://comments.gmane.org/gmane.comp.version-control.git/189776 , tandis que certains de ces problèmes peuvent être résolus (c'est-à-dire que Facebook a corrigé certains problèmes qu'ils avaient dans mercurial: https: / /code.facebook.com/posts/218678814984400/scaling-mercurial-at-facebook/ ) les systèmes de contrôle de version commerciale ont un comportement de mise à l'échelle différent qui pourrait (ou dans d'autres environnements ne fonctionnerait pas) mieux fonctionner.

... et puis il y a cette responsabilité. Les grandes organisations pourraient préférer appeler un fournisseur externe en cas de problème au lieu d'utiliser leur temps pour déboguer les problèmes et compter sur le soutien de la communauté. Surtout si des référentiels corrompus contenant des informations confidentielles sont impliqués.

Ce ne sont en aucun cas des problèmes qui le rendent inutilisable dans les "environnements d'entreprise", mais comme toujours, les différents logiciels ont des avantages et des inconvénients différents qui doivent être évalués au cas par cas.

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.