Использование Git в корпоративной среде [закрыто]


24

Git - отличная система контроля версий. Если исключить тот факт, что он не имеет отличную поддержку графического интерфейса, это действительно хорошо и быстро. Но элементы управления исходным кодом, такие как Clearcase, имеют большую поддержку для корпоративных клиентов. Компании вкладывают огромные средства в серверы контроля версий и лицензию.

В последнее время большинство крупных компаний, таких как Google, используют Git вместо других систем контроля версий. Но у этой компании есть сильная группа с открытым исходным кодом, которая постоянно обеспечивает разработку и поддержку инструмента (у них может даже быть собственная версия Git). В то же время крупные компании на самом деле не заботятся о принятии проектов с открытым исходным кодом и придают им актуальность.

  • Является ли Git действительно надежным инструментом для корпоративной среды, особенно на платформе Windows?
  • Поддержка под вопросом для Git, так как это продукт с открытым исходным кодом.
  • Есть ли компания, которая предоставляет решения и поддержку? Каковы затраты сервера по сравнению с другими элементами управления версиями, такими как Clear-case?

2
Я не знаю, что Google принял Git, я понимаю, что они выбрали Mercurial. И вам придется убедить меня и в других крупных компаниях - есть ли у вас примеры?
Бенджол

4
Имеет отличную поддержку графического интерфейса. Просто выберите хорошую операционную систему.

2
@Benjol - эта тема может дать вам некоторые идеи. quora.com/…
сарат

1
@ Сарат, я знаю, что Твиттер стоит больших денег, но я бы не отнес его к категории крупных или корпоративных. // Я не знал, что code.google.comподдерживает git, это очень новая новость , и я не уверен, что вы могли бы назвать этот переход git над другими элементами управления версиями. [Первоначально] ( code.google.com/p/support/wiki/DVCSAnalysis) , они явно решили использовать Mercurial над
мерзавцем

@ Benjol В общем, я не могу сказать, но публичное репозиторий guava только что перешло в git .
Maaartinus

Ответы:


37

GitHub НЕ является системой управления версиями - она ​​«содержит» систему управления версиями под названием «Git». Помимо каламбура, это очень важное отличие - знайте это хорошо.

Что касается корпоративного использования, я могу сказать вам, что git такой же умный (и удобный, и лучший), как и SVN. И вы можете выбрать подходящую стратегию управления версиями (рабочий процесс) в зависимости от размера и масштаба проекта (и вашей команды). Нераспределенные системы не могут предоставить вам такую ​​гибкость.

введите описание изображения здесь

Для Windows посмотрите Msysgit или Visual Studio Extensions для Git - git очень хорошо работает в Windows. Также пользователи Windows смотрят на эту серию тренировок от TekPub - это все Windows.

ОБНОВЛЕНИЕ [февраль 2013] начало работы с git в visual studio

Ваш вопрос не является редкостью, и вы можете найти его в Google и получить много текста, объясняющего, почему и как (и следует ли) использовать git на предприятии.

Все еще не нравится Git? Посмотрите на другой DVCS под названием Mercurial .


12
Msysgit не является истинным гражданином Windows. Он прекрасно работает, но вряд ли на 100% нативный.
Ян Рамин

+1 за некоторые важные аспекты Git. Хотя @greengit указал на возможные варианты использования Git под Windows, он далеко не так интегрирован, как, скажем, SVN.
Технит

Мы используем Eclipse, который получил хорошую поддержку git.

1
Я думаю, что гитолит (или аналог) заслуживает упоминания здесь. Многие сотрудники службы безопасности любят локальных, закрытых и контролирующих возможность локального размещения репо.
Nic

2
@YannRamin: Msysgit, безусловно, настоящий гражданин Windows и на 100% родной. Он поставляется с оболочкой Unix, которая использует немного другие соглашения, но это оболочка, а не Git. Вы можете использовать Msysgit из cmd.exe или любой другой процесс Windows, как и любое другое собственное приложение. (Cygwin отличается, но Msys не Cygwin)
Ян Худек

16

+1 Mercurial.

Mercurial - это круто, легко, имеет много удобных графических интерфейсов и чувствует себя более профессионально. Я никогда не понимал, почему у Git такая шумиха, а другие великие находятся в тени. Mercurial также поддерживается google-кодом, bitbucket.org (эквивалент github), eclipse ... Я пользуюсь им два года и всегда был доволен им.

Изменить февраль 2014 года:

В то же время, Git взял на себя такое руководство, что я бы посоветовал его по Mercurial. Три года назад Mercurial был ИМХО более отполированным, чище, лучше. Однако, шумиха была на стороне Git, и импульс, который он получил с тех пор, делает его явным победителем. Сейчас это стандарт де-факто из-за огромного сообщества.


Git намного мощнее с точки зрения того, как вы можете манипулировать историей. Многие люди предпочтут объединить ветки локально, а затем перенести их в одну основную ветку, прежде чем переходить к основному / общедоступному репо; Таким образом, долгосрочная история остается очень чистой. Насколько я мог сказать в прошлый раз, когда я использовал HG, Mercurial не поддерживает такие типы редактирования истории. В общем, мерзавец в винде отстой; лучшие инструменты графического интерфейса (git-cola, gitk) для его использования можно найти только в Linux.
Эван Плейс

1
Я вряд ли скажу, что Git преуспел из-за шумихи: в прошлый раз, когда я проверял, формат бэкэнда Mercurial был основан на дельте и был подвержен коррупции как SVN или CVS. Между тем фундаментальная модель Git в основном только для записи с атомарными изменениями. Это просто гораздо более технически обоснованное решение.
Стюарт П. Бентли

@ StuartP.Bentley: что вы имеете в виду под коррупцией?
dagnelies

Внезапная остановка процесса в процессе копирования, перемещения, записи на диск или в сеть: в Git это будет создавать только объекты, которые сразу распознаются как мусор (так как содержимое не соответствует хешу), и даже если вы потерять что-то на полпути посередине, вы можете проверить, что вы получили, и собрать вещи оттуда.
Стюарт П. Бентли

Между тем, основанные на дельте форматы, которые хранят всю свою информацию об изменениях в одном файле, например Mercurial, могут иметь незначительные аварии (например, удаление строки, описывающей изменение), которые разбивают файл таким образом, что, как и Шалтай-Болтай , невозможно снова собрать вместе.
Стюарт П. Бентли

8

Я знаю, что https://github.com/ предоставляет некоторую поддержку в отношении частных репозиториев для предприятий.

В частности, они предоставляют услугу, называемую установка брандмауэра http://fi.github.com/. Они утверждают, что предоставляют поддержку, но у меня нет подробностей, размещенных в Интернете, и я никогда ими не пользовался.

Стоимость составляет 5000 долларов США на 20 человек в год.


-1 не отвечает на его вопрос вообще
MattyD

13
Он попросил компании, которые предоставляют решения и поддержку. У Github есть специальное решение для корпоративного git-хостинга. Это не отвечает на первый вопрос. Это как бы отвечает на второй вопрос. Это действительно отвечает на третий вопрос.
c00w

Вау, когда изменилась цена ФИ? Последнее, что я проверил, это было что-то вроде 200-250 $ / мес, и теперь это двойное oO
wildpeaks

8

Я использую и Git, и Mercurial для Windows, и оба они более чем полезны. Я думаю, что инструменты с графическим интерфейсом для Mercurial лучше, поэтому, если ваша команда привыкла к визуальным инструментам, это может быть лучше. Хотя я склонен использовать командную строку - для меня это просто имеет больше смысла.

Оба, по моему опыту, пуленепробиваемые. Вам не нужна «поддержка» как таковая, хотя я знаю, что многим предприятиям нравится иметь ее.

Я уверен, что есть и другие, но стоит взглянуть на Kiln , который является размещенным ртутным решением.

Пожалуйста, обратите внимание - независимо от того, каким путем вы идете, DVCS сильно отличаются от традиционных VCS. ИМХО, они превосходят почти во всех отношениях, но это может занять некоторое время, чтобы привыкнуть.


2
это может занять некоторое время, чтобы привыкнуть. // Я помню, как сильно я ненавидел Git в течение тех долгих двух дней адаптации из SVN.
c69

6

Git чужой для разработчиков Windows. Это не настоящий первоклассный гражданин. Это работает хорошо, но это инструмент Linux в первую очередь. Например, модель сервера git в значительной степени требует SSH-логинов для безопасности.

Поддержка - это вопрос, и есть компании, которые могут предоставить, обычно сопровождаемые размещенным решением.

Git, как известно, не требует огромных серверов - поскольку хранилища масштабируются больше, емкость и скорость всегда важны, но, поскольку большинство операций выполняются только на вашем компьютере, требования к серверу на порядок меньше, чем у Clearcase.

Что бы ни стоило, наша не совсем корпоративная компания, насчитывающая менее 100 человек, является огромным пользователем git в Windows с проектами Java и C.


1
Несмотря на то, что было много хлопот и копаний в документации, я заставил GIT очень хорошо работать с базовой аутентификацией HTTP через SSL, поддерживаемой сервером LDAP.
DoubleMalt

1
Остерегайтесь пробелов / окончаний строк, если вы планируете что-то портировать на Linux. Это может стать уродливым, если вы не будете бдительны с самого начала.
Эван Плейс

Git теперь встроен в VS 2013 и выше. М.С. сделал его гражданином первого класса.
Клэй Смит

5

Git сильно отличается от Clearcase, поэтому проблема для вас, вероятно, будет заключаться в том, как плавно перенести ваших разработчиков (и других пользователей) на другой способ работы с исходным кодом и файлами. В зависимости от того, насколько опытны ваши пользователи и насколько глубоко интегрирована система Clearcase на вашем предприятии, может потребоваться много обучения и отучиться.

Сначала я предлагаю вам попробовать git в пилотном проекте и посмотреть, как он работает для вашей команды. Получите безопасный репозиторий на github, и все готово для пилота.


5
  • Является ли Git действительно надежным инструментом для корпоративной среды, особенно для платформы Windows?

Мы скоро будем в сильном да с этим. Atlassian недавно сделал большие шаги к достижению этого с выпуском Stash 1.3 .

  • Поддержка является вопросом для Git, так как это контроль версий с открытым исходным кодом.

Существует сильная сеть поддержки знающих пользователей Git, предлагающих бесплатные консультации и различные группы LinkedIn (Git Version Control System). Быстрый поиск в Google обычно помогает с большинством требований. Для крупных корпоративных компаний сегодня на рынке доступны также варианты коммерческой поддержки git.

  • Какие-нибудь компании существуют, чтобы предоставить решения и поддержку? Как сервер стоит по сравнению с другими элементами управления версиями, такими как Clear-case?

В настоящее время существует ряд компаний, предлагающих надежную и специализированную поддержку Git. Clearvision и #goGit назвать одного из них.


Ссылка на тайник сломана полтора года спустя. Я нашел это здесь: atlassian.com/software/stash

1

На своем рабочем месте я работаю над тем, чтобы помочь перенести команду в Mercurial (похожий на git инструмент) через ClearCase.

Мы выбрали hg in party, потому что она основана на неизменности, что важно для наших бизнес-целей. Кроме того, поскольку он написан на Python, он очень хорошо работает в Windows. Git имеет репутацию слабого соуса на Windows, и мой опыт это подтвердил. (Я понимаю, что инструменты стали лучше, я больше не использую Windows для проверки. :-)).

Опыт в целом был положительным, с большинством наших недостатков, связанных с субрепозиториями и странными косвенными связями, связанными с ними. Другое дело, что в hg не существует хранилища метаданных; другие решения должны быть разработаны для управления этим.

Если бы я порекомендовал корпоративное решение для работы «из коробки» для разработчиков Windows, я бы порекомендовал исследовать Kiln и GitHub Firewall .

Я знаю, что это не дает прямого ответа на ваш вопрос. Но позвольте мне выразиться так: если вы привыкли к ClearCase, я ожидаю, что git будет на порядок проще в обучении, внедрении и администрировании.


1

Git и Mercurial можно использовать в корпоративных средах. До некоторой степени. У некоторых организаций есть дополнительные требования, в настоящее время не выполняемые git, такие как более строгий контроль доступа, так что только определенные пользователи имеют (чтение) доступ к определенным файлам в хранилище или как интерфейсы аудита, доступ к которым можно отслеживать. Некоторые коммерческие корпоративные системы также имеют более глубокую интеграцию с управлением ИТ-системами, например корпоративные решения для резервного копирования.

Git также не годится для обеспечения сохранения истории - по умолчанию он позволяет принудительным изменениям перезаписывать всю историю проекта.

Крупные организации иногда сталкиваются с проблемами масштабирования. Вот пример, который имел Facebook: http://comments.gmane.org/gmane.comp.version-control.git/189776 , хотя некоторые из этих проблем можно исправить (т. Е. Facebook исправил некоторые проблемы, которые были у них в Mercurial: https: / /code.facebook.com/posts/218678814984400/scaling-mercurial-at-facebook/ ) коммерческие системы контроля версий имеют другое поведение масштабирования, которое может (или в других средах не работать) работать лучше.

... а затем есть эта вещь ответственности. Более крупные организации могут предпочесть позвонить внешнему поставщику, когда возникнут проблемы, вместо того, чтобы тратить время на их устранение и полагаться на поддержку сообщества. Особенно если речь идет о поврежденных хранилищах с конфиденциальной информацией.

Это ни в коем случае не является проблемой, делающей его непригодным для использования в «корпоративных средах», но, как всегда, у разных программных продуктов есть свои плюсы и минусы, которые необходимо оценивать в каждом конкретном случае.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.