Представлен (https://about.gitlab.com/2015/11/22/gitlab-8-2-released/) релиз платформы для организации совместной работы с Git-репозиториями GitLab 8.2 (http://www.gitlab.com), которая по своим возможностям напоминает GitHub, но не привязана к конкретному сервису, распространяется в исходных текстах под свободной лицензией и позволяет развернуть web-сервис управления проектом на своём подконтрольном сервере. Код проекта написан на языке Ruby с использованием фреймворка Ruby on Rails и распространяется (https://gitlab.com/groups/gitlab-org) под свободной лицензией Expat (вариант лицензии MIT). Для хранения данных в GitLab поддерживается связка Redis с MySQL или PostgreSQL.GitLab наиболее востребован для организации командной разработки в корпоративных проектах, так как позволяет без привязки к облачному вендору развернуть инструментарий, похожий на Github Enterprise и Gitorious. Web-интерфейс GitLab во многом напоминает (http://demo.gitlabhq.com/) GitHub, но, тем не менее, не копирует его, а лишь повторяет наиболее удачные принципы. GitLab поддерживает (http://blog.gitlab.com/about-the-gitlab-project/) создание отдельных проектов, отслеживание ошибок, обработку запросов на добавление кода (рабочий процесс основан на обработке merge-запросов), навигацию по веткам и тегам, контроль за изменениями, рецензирование кода, многоуровневое управление доступом, Wiki, обмен небольшими кусками кода, наглядный анализ различий между версиями кода, средства визуализации ветвления репозитория и многое другое.
Наиболее важные улучшения GitLab 8.2:
- Поддержка системы хранения Git LFS (https://git-lfs.github.com/) (Git Large File Storage), развиваемой GitHub и позволяющей (https://www.opennet.me/opennews/art.shtml?num=43072) использовать Git для отслеживания версий больших файлов, содержащих наборы данных, звук, видео и графику. В штатном Git-репозитории большие файлы заменяются на текстовые ссылки, указывающие на контент в отдельном внешнем репозитории, что позволяет избежать повторного копирования файлов при клонировании и извлечении репозитория. При выполнении операций checkout большие файлы не загружаются вместе с остальными данными, а синхронизируются с сервера и хранятся в единственной копии;
- Возможность использования картинок emoji для наглядного выражения своего отношения к сообщениям о проблемах или запросам на изменение;
<center><a href="https://about.gitlab.com/images/8_2/emoji.png"><img src="https://www.opennet.me/opennews/pics_base/0_1448380746.png&q... style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>
- Возможность быстрого формирования релизов через создание тегов с привязкой произвольного текста (примечания к релизу) и набора файлов (сборки);
<center><a href="https://about.gitlab.com/images/8_2/releases.png">&l... src="https://www.opennet.me/opennews/pics_base/0_1448381028.png&q... style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>- Поддержка глобальных контрольных точек (Global Milestones), охватывающих сразу несколько проектов в заданной группе и упрощающих отслеживание активности и хода разработки в группах и проектах;
<center><a href="https://about.gitlab.com/images/8_2/global_milestones.png&qu... src="https://www.opennet.me/opennews/pics_base/0_1448381250.png&q... style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>
- Для пользователей коммерческой редакции Gitlab EE представлена поддержка автоматического зеркалирования репозиториев. Зеркала всегда находятся в актуальном состоянии и повторяют начинку основного репозитория, что можно использовать для организации публичного зеркала своего проекта на отдельном сервере.
<center><a href="https://about.gitlab.com/images/8_2/mirroring.png">&... src="https://www.opennet.me/opennews/pics_base/0_1448381455.png&q... style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>
- Поиск теперь охватывает содержимое сообщений, привязанных к коммитам;
<center><a href="https://about.gitlab.com/images/8_2/commit_search.jpg"&... src="https://www.opennet.me/opennews/pics_base/0_1448382019.jpg&q... style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>- Поддержка сохранения в Git результатов сборки в процессе работы системы непрерывной интеграции.
- Поддержка кэширования результатов сборки зависимостей или произвольных файлов/директорий между сборками в системе непрерывной интеграции;
- В GitLab Runner теперь создаются разные Docker-контейнеры для клонирования репозитория, выполнения сборки и копирования результатов (артефактов).URL: https://about.gitlab.com/2015/11/23/announcing-git-lfs-suppo.../
Новость: http://www.opennet.me/opennews/art.shtml?num=43385
> Возможность использования картинок emoji для наглядного выражения своего отношения к сообщениям о проблемах или запросам на изменение;Теперь гитхабу точно капец.
Поднял у себя, поигрался 5 минут и снес нахрен. С таким интерфейсом ему до битбакета как до Марса рачки, не то что до гитхаба.
Синдром утенка в действии
Синдром гуру в действии
гуру гитхаба фчяти, все в меркуриал!
> Поднял у себя, поигрался 5 минутЭто ты о чём сейчас?
На гитхабе уже давно есть
>> Теперь гитхабу точно капец.
> На гитхабе уже давно естьgit clone git@github.com:kapetz.git
code review-ить в нем можно?
можно
Можно и довольно уютно
А сразу несколько коммитов ?
Как в Attlasian Crucible
> Возможность использования картинок emoji для наглядного выражения своего отношения к сообщениям о проблемах или запросам на изменение;Очень важное изменение...
Самое главное, что эмоции по поводу кода лучше держать при себе. Хуже всего, когда в списке рассылки начинают обижаться разработчики за то, что в их коде нашли багу и т.п.
Gerrit все же лучше :)
в Gerrit'е вообще есть возможность сделать чтобы явно не надо было ревьюеров задавать?я в медиавики от этого страдал, идиотизм - засылаешь патч, а чтобы тебя отревьюили, ты должен сам придумать, у кого попросить ревью O_O блин, да я вас вообще не знаю, разберитесь там сами как-нибудь...
точнее сейчас они это вроде как-то наполовину решили, у них там бот какой-то лазает и ревьюеров добавляет...
но штатно этого нет что ли???
В багзилле Gentoo все баги автоматически назначаются на юзера bug-wranglers@g.o, и изменить это нельзя, если прав недостаточно. Неужели там не было дефолтного юзера, на которого валится всё, а потом его "инбокс" разгребают?
> В багзилле Gentoo все баги автоматически назначаются на юзера bug-wranglers@g.o, и изменить
> это нельзя, если прав недостаточно. Неужели там не было дефолтного юзера,
> на которого валится всё, а потом его "инбокс" разгребают?A это он и есть. Потом баг назначается по принадлежности.
> в Gerrit'е вообще есть возможность сделать чтобы явно не надо было ревьюеров задавать?Конечно же есть! Эту проблему можно решить установкой двух плагинов:
reviewers - дает возможность указать кто будет ревьювить проект или его часть;
reviewers-by-blame - автоматически ставит ревьювером автора кода, который ваш патч изменил.
> в Gerrit'е вообще есть возможность сделать чтобы явно не надо было ревьюеров задавать?Вроде есть возможность задать для проекта группу, которая должна поревьюить…
)) может Линус
Чудесно. LFS - всем пофиг. Milestones - всем пофиг. Зато мимо emoji пройти молча религия не велит.
Да вы офигели. Вам опенсорс дал тулзу корп-уровня, а вы нос воротите. Совсем уже очешуели, ну правда. Радоваться нужно!