[Перевод] Новая версия GitLab 8.9
С GitLab 8.9 комфортнее работать в больших сложных проектах. Блокировка файлов, назначение приоритетов меткам, гибкие настройки уровня вовлеченности в проект, и возможность запретить объединение веток (merge) до момента, пока билд не выполнится успешно. В GitLab CI теперь можно указывать среды (production, staging, и т.д.) и задавать срок хранения артефактов. Появились шаблоны настроек CI, так что начать им пользоваться теперь еще проще.
Персона месяца (MVP) — Руи Сантос. Он разработал возможность ограничивать обьединение веток до прохождения билда. Спасибо Руи!
С версии 8.8.0 добавилось 1761 коммитов, 1947 файла были изменены. Что конкретно изменилось — смотрите ниже.
Репозиторий Git позволяет хранить не текстовые файлы (бинарные, например), но не может управлять изменениями в них — нельзя сравнить версии файла, нельзя объединить изменения из разных версий файла и т.д. Если допустить редактирование файла одновременно нескольким членам команды, то потом потребуется масса времени на ручное устранение конфликтов версий.
Чтобы обойти эту проблему, мы добавили возможность ручной блокировки файлов в GitLab. Блокировка файла не позволяет никому, кроме Вас, изменять определенный файл или целый каталог. Это также наглядный способ объявить, что Вы работаете над этим файлом.
Найти список всех заблокированных файлов в репозитории:
Функция блокирования файлов доступна только в редакции Enterprise Edition и на GitLab.com. Мы приветствуем ваши дополнительные предложения для расширения этой функциональности.
Среды и Развертывание в CIВ предыдущей версии GitLab появилось понятие среду развертывания: среда тестирования, среда приемки и среда промышленной эксплуатации. GitLab CI позволяет настроить последовательности развертывания (цепочки переходов между средами), по в рамках которых исполнятся задачи доставки и установки изменений.
В новой версии 8.9 Вы можете добавить дополнительные Среды в конфигурационном файле CI проекта (.gitlab-ci.yml). Это позволит настроить конфигурацию GitLab максимально близко к фактическому окружению проекта и наглядно отслеживать динамику развертывания в этих средах.
В крупных проектах с сотнями требованиями и тысячами задач уходит масса времени на назначение приоритетов и определение порядка выполнения работ при назначение приоритета каждому дефекту и каждой задаче по отдельности. Попробуйте новую функцию массового определения приоритета с помощью специальных меток.
Метка с приоритетом — такая же текстовая метка, но с указанием приоритета, который влияет на сортировку объектов, которым эта метка присвоена.
Например, самым высоким приоритетом для GitLab является P1. Если отсортировать дефекты по приоритету, то сверху отобразятся дефекты с P1, затем с P2 и т.д. Помечая метку «Безопасность» высоким приоритетом P1, дефекты, относящиеся к этой категории, автоматически получат максимальный приоритет.
Чтобы быть в курсе важных для Вас событий, мы добавили новый тип уведомлений — пользовательский.
В предыдущих версиях GitLab можно было настроить уведомления Участника (participating level), т.е. подписаться на события в объектах, в которых Вы участвуете, или в которых Вы упомянуты.
В новой версии 8.9 Gitlab позволяет настроить уведомления по другому принципу — отметить интересующие типы событий (новое примечание, новый дефект, закрытие дефекта, новый запрос на объединение, переназначение дефекта и т.д.)
Связь с владельцами проектов теперь доступна с домашней страницы проекта. Если вам нужен доступ к проекту, обратись к владельцу проекта, не выходя из GitLab. Запросы отображаются в секции участников проекта. Владельцу проекта отправляется уведомление.
Модуль поддержки непрерывной интеграции CI, встроенный в GitLab, управляется с помощью .gitlab-ci.yml файла, где определяются объекты тестирования, сборки и развертывания. Чтобы упростить первые шаги по настройке этого файла, попробуйте воспользоваться готовыми шаблонами.
Для того, чтобы начать работу с шаблоном .gitlab-ci.yml, создайте новый файл и назовите его .gitlab-ci.yml. Вы увидите выпадающий список названий готовых шаблонов.
Базовая навигация по элементам проектов осуществляется с помощью верхней панели. Страницы, которые формируются специально для текущего пользователя ( дефекты, группы, активность и т.д.) теперь перенесены в новую боковую всплывающую панель.
GitLab теперь поддерживает стандарт универсальной 2-факторной аутентификации (u2f). Это означает, что вы можете использовать U2F ключи безопасности на Yubico, известного как YubiKeys, в качестве 2-го фактора при входе в GitLab.
Подробнее о поддержке u2f в нашем блоге и документации по 2-факторной аутентификации в GitLab.
Если у Вас несколько экземпляров GitLab, или Вам необходима резервная копия репозитория, то теперь Вы можете импортировать и экспортировать проекты целиком.
Перейдите на страницу настроек проекта, чтобы экспортировать Ваш проект. Импорт проекта можно сделать из новой страницы проекта.
В новой версии у Вас есть возможность запретить объединение веток (merge) до момента, пока билд не выполнится успешно, Благодаря Руи Сантос.
Другие измененияПодробнее об остальных изменениях можно ознакомиться в Changelog. Ниже приведены только наиболее значимые.
Улучшенная подсветка синтаксисаGitLab 8.9 включает в себя первый релиз Rouge с сентября (!) с поддержкой более чем 20 новых языков, а также поддержкой новых возможностей Swift, Ruby, Python и C / C ++, а также некоторых критических исправлений ошибок для Apache, JavaScript, Objective — C и Groovy.
Award Emoji в комментарияхТеперь Вы можете проголосовать по отдельному комментарию в дефектах и запросах на объединение, а также ответить конкретному человеку, не искажая ход беседы, или провести быстрый опрос.
Ручное добавление TodosКаждый дефект и запрос на объединение теперь может быть помечен как «Todo» или «Done».
С функцией назначения приоритетов, метки играют все более важную роль в GitLab. Чтобы работать с дефектами эффективнее, мы добавили возможность массового присвоения меток.
Срок действия артефактовЕсли Вы используете артефакты в GitLab, встроенных в CI, у Вас может накопиться большой архив старых данных. Теперь вы можете указывать срок действия артефактов путем добавления строки expire_in в свой. gitlab-ci.yml файл. Артефакты будут считаться устаревшими, после указанного периода времени.
Вы можете по-разному указывать срок действия:
3 минуты 4 секунды
2 ч 20 мин
2ч20 мин
6 мес 1 день
47 лет 6 мес и 4д
3 недели и 2 дня
Примечание: эта функция требует Runner 1.3, выпущенный одновременно с GitLab 8.9
Ключевое слово » Когда» для АртефактовТеперь Вы можете иметь артефакты только на провал, успех или на все события.
Поведение по умолчанию такое же, как и раньше, создание артефактов только «на успех».
Примечание: эта функция требует Runner 1.3, выпущенный одновременно с GitLab 8.9
Поддержка Docker реестра Manifest V1GitLab 8.9 добавляет поддержку Manifest V1, порожденного старыми версиями Docker (до 1.10)
GitLab Mattermost 3.1Mattermost 3.1 отгружается в GitLab 8.9 с мульти-командными аккаунтами, переводом японского языка, Apple Watch, с модернизированными уведомлениями, новыми горячими клавишами и переключателем каналов, новыми вариантами отображения, новыми смайликами, плюс обновление для системы безопасности и многие другие улучшения.
Обновление требует ручных операций! Перед обновлением обязательно прочитайте документацию для обновления с версий до 8.9
Комментарии (1)
11 июля 2016 в 20:59
0↑
↓
Как морда для GIT — Гитлаб очень неплох, хотя и несколько тяжеловесен.Но вот как трекер — довольно убог. Поиск по тикетам работает криво, непонятно что где ищется, и ещё в этой версии 8.9 навигацию переделали так, что без 100 грамм не разберёшься.
Попытался настроить нотификацию, при создании новых юзер — бесполезно: в документации написано одно, в программе — другое.
Да похоже, что у них у самих всё настроено криво, потому что в их SaaS спамят нещадно.