Как стать автором
Обновить
22.86
Рейтинг

Git *

Система управления версиями файлов

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Как управлять Kubernetes кластерами с помощью Flux, Helm Operator и Git submodules

Системное администрирование*Git*DevOps*Kubernetes*
Из песочницы

Kubernetes используют так или иначе сейчас примерно все, но и задачи решаются совсем разные. Я расскажу про наши требования и разработанные под них решения для управления множеством кластеров. По теме GitOps не так много статей и обсуждений на Хабре, в отличие от англоязычных источников, поэтому будет интересно и услышать мнение тех, кто применял подход на своей практике.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Просмотры2K
Комментарии 11

Новости

Показать еще

Как мы переезжали на новую версию GitLab и внедряли LFS. А потом чинили бэкапы

Блог компании LightmapGit*Системы управления версиями*Разработка игр*Системы сборки*

Исторически мы использовали GitLab 8, который работал на хосте Mac на VirtualBox. Потом конфигурация перестала устраивать, поэтому в локальной сети завели отдельную полноценную Ubuntu-машину. Заодно и GitLab обновили до версии 11.2.1-ee.

Ставили все по официальному гайду. При установке postfix возникли ошибки из-за цифры в имени хоста (решилось переименованием), в остальном сложностей не было. Зато они появились позже: гит-машине перестало хватать памяти на объекты, мы подключили LFS и решили проблему, но потом сломались бэкапы. В общем, было весело. О том, как все это чинили — рассказал под катом.

Читать далее
Всего голосов 37: ↑37 и ↓0+37
Просмотры4.1K
Комментарии 11

Как оформить серию коммитов Git, чтобы её приняли в любой проект

Блог компании Mail.ru GroupGit*GitHubУправление разработкой*Разработка под Linux*

Добрый день, коллеги! Доказывать, что нужно использовать систему контроля версий, уже давно не нужно. И Git занял тут лидирующую позицию, стремительно вытеснив SVN. Но это инструмент, а инструментом нужно уметь пользоваться, чтобы добиться лучших результатов. Как топором, один человек сможет просто срубить дерево а другой из этого дерева сможет сделать великолепную скульптуру. Так и с помощью Git, один человек сможет просто не потерять результаты своего труда за день, а другие смогут организовать совместную работу над проектом нескольких сотен человек. Да так, что о любой строчке кода можно будет и через пять лет сказать, откуда она взялась и для чего нужна.

Постараюсь рассказать для начинающих и не очень разработчиков, как оформлять свои коммиты, чтобы их максимально быстро и без претензий принимали в любые проекты, как опенсорсные так и коммерческие.

Читать далее
Всего голосов 56: ↑54 и ↓2+52
Просмотры14K
Комментарии 30

Вышел релиз GitLab 14.1 с реестром Helm Chart и правилами эскалации

Open source*Git*Системы управления версиями*Системы сборки*DevOps*
Перевод

Мы рады представить вам релиз GitLab 14.1 с возможностью собирать, публиковать и распространять Helm-чарты, создавать правила эскалации для ответственных за страницу, подключать обработчики заданий GitLab к вашим кластерам Kubernetes, обеспечивать соблюдение решений по покрытию кода и многим другим!


Картинка для привлечения внимания

Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Просмотры2.7K
Комментарии 1

Настраиваем площадку Битрикс правильно: простые советы для сохранения душевного здоровья тимлида

Git*1С-БитриксIT-компании
Из песочницы

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

Задача тимлида — создать команде среду для разработки и правильные условия для написания кода. Меня зовут Артем Первушин, я технический директор в компании Extyl. Чтобы помочь с этим я решил опубликовать напоминалку, основанную на внутренних регламентах нашей компании.

Читать далее
Всего голосов 12: ↑9 и ↓3+6
Просмотры3K
Комментарии 23

Зачем мне твой код смотреть?

Программирование*Совершенный код*Git*IT-стандарты*GitHub
Из песочницы

Ревью кода это довольно обыденный процесс. Хотя и не многие могут объяснить, зачем это нужно команде — ревью будто без вопросов необходимо для мифического "хорошего кода". В целом сообразить пару причин, зачем же делать просматривать код коллег довольно просто, но такие причины далеко не всегда имеют весомое подтверждение. И далеко не всегда ревью достигает предполагаемых целей из-за недостаточного качества ревью и вовлечения команды.

Я расскажу про причину зачем вам лично может быть полезно ревью кода сокомандников.

Читать далее
Всего голосов 14: ↑3 и ↓11-8
Просмотры2.9K
Комментарии 9

Там царь Кащей над златом чахнет, или как сохранить все старые репозитории в один включая историю git

Ненормальное программирование*Open source*Программирование*Git*GitHub

Когда-то пару лет назад на работе ко мне обратился коллега (привет!), который знает мою любовь к автоматизации с довольно нетривиальной просьбой. Нужно было почистить старые репозитории в корпоративной орге Github, но не совсем удалить, а сохранить на "всякий случай". Да и не просто сохранить, а сохранить с git историей. Мы с ним довольно быстро набросали скрипт на баше, который принимал аргументом orgName/projectName. После окончания работы скрипта он пушил код в отдельную ветку, и потом можно было это померджить в основную "ветку-хранилище". Скрипт был написан быстро, задачу решал, но все равно оставалось пара действий, которые надо было сделать "руками". Но в том случае это было нормально, так как требовалось подтверждение на архивирование старого проекта. Еще тогда у меня появилась идея сделать Github Actions workflow, с которым я только познакомился. Но свободного времени на это не было. И вот спустя год-полтора я наконец-то сделал задуманное - так появился на свет Bygone project, который доступен на github.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Просмотры3.2K
Комментарии 7

Организация распределённого хранения файлов с помощью git-annex

Open source*Git*Системы управления версиями*Хранение данных*
Из песочницы
Tutorial

Разберем способ удобного хранения 35 000 файлов домашней коллекции, которая используется на 3 ПК и 2 телефонах. При этом сразу все данные на некоторых устройствах не нужны.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Просмотры3.7K
Комментарии 11

GitFlic. Российский GitHub. Рассмотрение сервиса и его нюансы

Git*Управление разработкой*Облачные сервисы
Recovery mode

В этой статье мы рассмотрим новый российский сервис от компании ООО "Ресолют" под названием GitFlic, где попробуем найти хорошие моменты, а также выльем весь шквал критики на разработчиков этого чуда...

Читать далее
Всего голосов 50: ↑29 и ↓21+8
Просмотры9.6K
Комментарии 46

Уходим с Mercurial на Git

Блог компании RUVDS.comPython*Git*R*Управление разработкой*
Tutorial
Кадр из фильма «Красный шар». Режиссер Альбер Ламорис. 1956 год

Так уж случилось, что у меня остался ряд репозиториев на Mercurial, которые захостил на Bitbucket много лет назад. Проекты перешли в полуархивное состояние, поэтому заглядывал в них не так уж и часто. И тут я решил обратиться к материалам, надо было внести правку. С удивлением обнаружил, что репозиториев на битбакете нет, но есть публикация «Sunsetting Mercurial support in Bitbucket».

Не критично, локальные репозитории сохранились же (а там коммитов за 10+ лет). Попробуем переехать на github/gitlab по инструкции из статьи. И, конечно же, эти инструкции работают только с latin-1, русские буквы либо не дают переехать, либо заменяются на ?. Извечная проблема кодировок. Можно ли что-то сделать?

UPDATE по результатам комментариев.
Для «приземления» задачи рассмотрите контекст коммерческой поддержки большой инсталляции ПО, созданного в компании где вы сейчас работаете, которое n лет уже не развивается (выпустили совсем новую ветку), но обязательства по поддержке остались по проданным ранее контрактам. И периодически всплывают баги.

Является продолжением серии предыдущих публикаций.
Читать дальше →
Всего голосов 37: ↑36 и ↓1+35
Просмотры5.6K
Комментарии 34

Вышел долгожданный релиз GitLab 14.0

Open source*Git*Системы управления версиями*Системы сборки*DevOps*
Перевод

Картинка для привлечения внимания


Когда мы думаем обо всём, что было выпущено за год с момента выхода GitLab 13.0, мы не можем не гордиться нашим сообществом и нашей командой. В этом месяце мы празднуем выход GitLab 14.0, и в связи с этим устроим небольшую ретроспективу. Вместе мы добились такого прогресса за последний год, что нам хочется рассказать обо всём, что потребовалось, чтобы пройти путь до GitLab 14.

Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Просмотры5.6K
Комментарии 5

Почему стоит выбрать Git для управления документацией?

Блог компании OTUSGit*GitHub
Перевод

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

Метод, описанный ниже, отличается низким порогом вхождения: фактически уже завтра вы сможете начать работать по-новому.

Читать далее
Всего голосов 10: ↑9 и ↓1+8
Просмотры5.8K
Комментарии 12

8 недооцененных команд Git, которые должен знать каждый программист (помимо привычных pull, push, add, commit)

Блог компании OTUSPHP*Программирование*Git*
Перевод

Если вы сделали опечатку, когда вводили имя ветки, вам поможет вот такая команда.

Читать далее
Всего голосов 38: ↑23 и ↓15+8
Просмотры17K
Комментарии 28

Как контейнеризировать среды ML разработки и не посадить на мель процессы MLOps

Блог компании GlowBytePython*IT-инфраструктура*Git*
Tutorial


Проблема эффективного создания продуктов на базе Machine Learning в бизнесе не ограничивается подготовкой данных, разработкой и обучением нейросети или другого алгоритма. На итоговый результат влияют такие факторы, как: процессы верификации датасетов, организованные процессы тестирования, и размещение моделей в виде надежных Big Data приложений.
Бизнес-показатели зависят не только от решений Data Scientist’а, но и от того, как команда разработчиков реализует данную модель, а администраторы и инженеры развернут ее в кластерном окружении. Важно качество входных данных (Data Quality), периодичность их поступления, источники и каналы передачи информации, что является задачей дата-инженера. Организационные и технические препятствия при взаимодействии разнопрофильных специалистов приводят к увеличению сроков создания продукта и снижению его ценности для бизнеса. Для устранения таких барьеров и придумана концепция MLOps, которая, подобно DevOps и DataOps, стремится увеличить автоматизацию и улучшить качество промышленных ML-решений, ориентируясь на нормативные требованиям и выгоду для бизнеса. Применять подходы MLOps необходимо на всех этапах создания ML решений.

В статье мы поговорим об использовании принципов и практик MLOps на стадии разработки моделей, и расскажем как самим развернуть сервис самообслуживания по созданию сред разработки для дата-саентистов.
Читать дальше →
Всего голосов 2: ↑2 и ↓0+2
Просмотры1.1K
Комментарии 3

DRAW.io в искусстве хранения конфигов

IT-инфраструктура*Cisco*Git*Сетевые технологии*
Tutorial

Итак, у вас есть длинные лабораторки, которые делаются уже не одну неделю. Каждый день вы что-то добавляте и вам уже достаточно трудно сориентироваться: что и на каком этапе было добавлено, как называются те или иные устройства. Конечно у вас уже есть копия вашего GIT, и часто приходится прыгать между лабами/конфигами и т.п. И вдруг вам надо добавить на похожие хосты похожие куски конфигов, но вы уже подзапутались какое имя было у того верхнего левого роутера или нижнего правого ACCESS свича...Если знакомая ситуация - читайте дальше, Шура.

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Просмотры5.5K
Комментарии 8

Функция, которую мне хотелось бы видеть в Git: группы коммитов

Блог компании Mail.ru GroupПрограммирование*Git*Системы управления версиями*GitHub
Перевод

Почти все любят Git. Я тоже. Он работает, он эффективен, в нём изумительная модель данных, и в нём есть все возможные инструменты. За 13 лет использования не было случая, чтобы я не находил в Git нужный мне инструмент. До недавнего времени. Но сначала давайте поговорим о GitHub.
Читать дальше →
Всего голосов 35: ↑32 и ↓3+29
Просмотры9.3K
Комментарии 65

Менеджер паролей с GPG шифрованием: настройка PASS на iOS + Git

Блог компании RUVDS.comИнформационная безопасность*Open source*Git*Хранение данных*
Tutorial
Наверняка многим из вас знакомы работы Филиппа Циммерманна, а в частности, самая известная из них — PGP (Pretty Good Privacy — Почти Полная Конфиденциальность), опубликованная в далеком 1991 году. Изначально PGP как пакет программного обеспечения предназначался для шифрования электронной почты и до сегодняшнего момента алгоритм(ы) шифрования, заложенные в PGP еще не были взломаны.



В этом году PGP исполняется 30 лет и в связи с этой знаменательной датой я с вашего позволения напишу свой опыт взаимодействия с PGP в качестве основы для менеджера паролей.
Небольшая ремарка: PGP был отжат корпоратами и стал проприетарным, а альтернативная версия с открытым исходным кодом стала носить имя GnuPG (сокр. GPG). Далее в этой статье буду пользоваться аббревиатурой GPG.
Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Просмотры5.1K
Комментарии 11

Нетривиальное слияние репозиториев с помощью git-filter-repo

Python*Git*
Recovery mode

Вторая часть истории про слияние репозиториев. Суть проблемы вкратце такова: надо слить репозиторий с подрепозиторием с сохранением истории. Решение на gitpython работало за 6 часов и выдавало удовлетворительный результат. Но, что-то не давало мне покоя...

Читать далее
Всего голосов 9: ↑7 и ↓2+5
Просмотры2.2K
Комментарии 3

Как я познавал ci/cd, Гитхаб экшены

Java*Git*Серверное администрирование*GitHubСофт
Tutorial

Гитхаб экшены, как я познавал ci/cd

   Всем Алоха. Все слышали про ci/cd, про то что он должен быть в каждой компании и то что он упрощает нам жизнь. У всех свой ci/cd. 

   Кто-то предпочитает Jenkins. Особенно если у вас куча микросервисов, команд и процессов, то при помощи Дженкинса можно достаточно гибко настроить ci/cd в компании. Кто-то использует GitLab actions и для каждого репозитория настраивает свои пайплайны и процессы. Достаточно удобно и просто настраиваемый механизм сборки и доставки артефактов на стенды. Не чуть не хуже GitHub actions. Это было открытием для меня что в GitHub появился такой функционал, о котором мы поговорим позже. Ну и конечно всеми «любимый» скриптовый ci/cd. Пачка скриптов, которые нужно выполнить в определенной последовательности чтобы собрать и задеплоить артефакты. Есть ещё так сказать хэнд мэнуал ci/cd. Но это особый вид извращения, с которым не пожелаю столкнуться никому. В котором нужно собрать артефакты у себя на машине и по какому нить ридми выполнять команды в терминале, лазить по ssh смотреть, что все копировалось, перезапускать сервисы и другие развлечения. 

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

Read more about GitHub Actions
Всего голосов 12: ↑12 и ↓0+12
Просмотры11K
Комментарии 55

Ваш безлимит: как увеличить пропускную способность автомерджа

Блог компании BadooВысокая производительность*Git*Системы управления версиями*Системы сборки*

Меня зовут Руслан, я релиз-инженер в Badoo и Bumble. Недавно я столкнулся с необходимостью оптимизировать механизм автомерджа в мобильных проектах. Задача оказалась интересной, поэтому я решил поделиться её решением с вами. В статье я расскажу, как у нас раньше было реализовано автоматическое слияние веток Git и как потом мы увеличили пропускную способность автомерджа и сохранили надёжность процессов на прежнем высоком уровне.

Читать далее
Всего голосов 20: ↑20 и ↓0+20
Просмотры2.9K
Комментарии 2

Вклад авторов