Перевод статьи Джейсона ван Гюмстера «6 places to host your git repository».
Недавняя смена собственника GitHub привела к тому, что многие пользователи стали искать альтернативу этому популярному ресурсу. Вот шесть вариантов, на которые стоит обратить внимание.
Возможно, вы относитесь к тем людям, для которых эта новость прошла незамеченной, но несколько месяцев назад Microsoft купил GitHub. Мы ничего не имеем против обеих этих компаний. В последние годы представители Microsoft открыто высказывались в поддержку open source, а GitHub практически с момента своего создания стал хранилищем огромного количества open source проектов.
Однако недавнее приобретение GitHub могло вызвать у вас небольшой зуд. Вы вдруг поняли, что ваш open source код хостится на коммерческой платформе. Возможно, вы еще не готовы соскочить с этого корабля, но всегда полезно знать, какие есть варианты. Давайте посмотрим, что предлагает Всемирная паутина в плане размещения кода.
1. GitHub
Серьезно, это вполне нормальный вариант. За GitHub не числится недобросовестного поведения, а Microsoft с недавнего времени приветствует open source. Нет ничего плохого в том, чтобы продолжить хранить ваш проект на GitHub. Как говорится, поживем – увидим.
Этот сайт, ориентированный на разработку ПО, по-прежнему имеет самое большое сообщество и одни из лучших инструментов для отслеживания проблем, ревью кода, непрерывной интеграции и управления кодом в целом. Он по-прежнему основан на Git – всеобщей любимой системе контроля версий с открытым исходным кодом. Ваш код по-прежнему ваш. Так что нет ничего плохого в том, чтобы оставить все, как есть, раз уж ничего не изменилось в худшую сторону.
2. GitLab
Если речь заходит об альтернативных платформах, то чаще всего упоминается GitLab. Он полностью опенсорсный. Вы можете разместить ваш код прямо на сайте GitLab (весьма похоже на то, как вы сделали бы это на GitHub). Но вы также можете самостоятельно разместить экземпляр GitLab на вашем собственном сервере и полностью контролировать права доступа и то, как все там устроено.
По функционалу у GitHub и GitLab практически паритет, а в плане непрерывной интеграции и инструментов тестирования GitLab, может быть, даже выигрывает.
Хотя сообщество разработчиков у GitLab определенно меньше, чем у GitHub, оно тоже немаленькое. И возможно, там вы найдете больше близких вам по духу людей.
3. Bitbucket
Bitbucket существует уже много лет. В каком-то смысле он мог бы служить примером того, какое будущее ждет GitHub. Bitbucket был приобретен более крупной корпорацией (Atlassian) восемь лет назад и в нем уже произошли некоторые изменения. Это по-прежнему коммерческая платформа, подобная GitHub, но уже далеко не стартап и в плане организации имеет более стабильный фундамент.
Большинство функций Bitbucket аналогичны тем, что есть у GitHub и GitLab, но есть и несколько собственных – вроде нативной поддержки Mercurial-репозиториев.
4. SourceForge
SourceForge это дедушка сегодняшних сайтов для размещения open source кода. Раньше, если вам нужно было разместить open source проект, самым верным местом для хостинга и расшаривания релизов был SourceForge.
Ему потребовалось некоторое время для перехода на Git в плане контроля версий, он также пережил серию продаж и перепродаж в сочетании с несколькими неудачными решениями по некоторым open source проектам.
Но создается впечатление, что теперь SourceForge вполне оправился. Сегодня на этом сайте живет довольно много проектов с открытым кодом. Однако многие люди по-прежнему чувствуют себя обманутыми, а кроме того, различные попытки монетизировать платформу также не вызывают восторга. Так что смотрите в оба.
5. «Сделай сам»
Если вы хотите иметь полный контроль над судьбой своего проекта (вместе с полной ответственностью), то лучшим вариантом для вас будет самостоятельное размещение. Это хорошая альтернатива как для больших, так и для маленьких проектов.
Git имеет открытый исходный код, поэтому его можно с легкостью разместить самостоятельно. Если вам нужны такие функции, как отслеживание проблем и ревью кода, можно запустить экземпляр GitLab или Phabricator. Для обеспечения непрерывной интеграции можно установить собственный экземпляр сервера автоматизации Jenkins.
Да, ответственность за инфраструктуру и связанные с ней требования безопасности полностью ложится на ваши плечи, так же, как и расходы. Однако это не слишком сложно. И если вы хотите наверняка избежать капризов любой посторонней платформы, то это отличный вариант.
6. Все вышеперечисленные
Главная прелесть всех указанных платформ, несмотря на всякие перипетии с правами собственности, в том, что они по-прежнему основаны на надежной технологии с открытым исходным кодом. Кроме того, они предназначены для дистрибуции по многочисленным узлам большой сети (например, в интернете).
Вам не обязательно пользоваться только одной из этих платформ. Можно использовать сразу две или вообще все. Еще и самостоятельно хостить в домашних условиях (чтобы уж наверняка), используя экземпляр GitLab и имея клоны репозиториев на GitHub и Bitbucket для отслеживания проблем и для непрерывной интеграции.
Как вариант, можно держать главную кодовую базу на GitHub, но для собственного спокойствия завести «бэкап» – клоны на GitLab.
Главное, что у нас есть выбор. И все эти варианты доступны нам благодаря open source лицензиям очень полезных и мощных проектов. Будущее прекрасно.
Конечно, я мог и пропустить какие-то варианты с открытым исходным кодом, которые тоже стоит рассмотреть. Добавляйте своих фаворитов в комментариях, рассказывайте, какими платформами пользуетесь сами и в каких комбинациях!
[customscript]techrocks_custom_after_post_html[/customscript]
[customscript]techrocks_custom_script[/customscript]
С 6 мест по факту только 3. Какой то кликбейт прям. Надеялся найти что-то новое а тут разводняк в названии.