Все потоки
Поиск
Написать публикацию
Обновить
49.98

Git *

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

Сначала показывать
Порог рейтинга
Уровень сложности

Автоматическая сборка snap пакетов в CI/CD

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров994

Автоматическая сборка snap-пакетов с помощью GitLab CI/CD и Docker

Статья посвящена автоматизации сборки snap-пакетов с использованием GitLab CI/CD и Docker. Рассматриваются шаги настройки пайплайнов для создания и публикации пакетов, а также примеры конфигурации файлов .gitlab-ci.yml и Dockerfile.

Читать далее

Новогодний квиз по вашему git log. Пятничный пост

Уровень сложностиПростой
Время на прочтение1 мин
Количество просмотров1.5K

Наступает конец года. Впереди последний релиз, код-фриз, корпоратив и подведение итогов. Я накидал пару командных HTML игр (например, квиз), основанных на логах вашего репозитория (для git). Наливаем чай или пиво. Собираем команду. Играем, смотрим ачивки. Исходники тут

Читать далее

Вышел релиз GitLab 17.6 с бета-версией Duo Chat с автономным управлением

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров2.1K
Читать дальше →

Есть ли жизнь вне GitHub? Смотрим альтернативы

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров12K

Недавно со мной произошла довольно забавная ситуация : коллега попросил помощи со своим пэт-проектом. Перейдя по ссылке, меня встретила светлая тема (ну серьёзно, чьей задумкой было сделать её дефолтной), и интерфейс, который очень пытался быть похожим на GitHub, но у него не совсем получалось.

Читать далее

GitHub для тестировщиков: закладываем фундамент

Время на прочтение13 мин
Количество просмотров9.1K

Привет, Хабр! Я – Мария Скрипачева, тестировщик в АйТи-Балансе. Сегодня почти все компании применяют тестирование, и мы не исключение: наши проекты проходят несколько стадий проверок до развёртывания. На нынешнем месте работы я иногда встречаю вопрос, с которым не раз сталкивалась на предыдущих: «а нужен ли GitHub тестировщику?». Эта дискуссия не нова. Я решила внести свою лепту в обсуждение, опираясь на мой опыт и опыт моих коллег, и заодно рассказать о фундаментальных вещах. Поехали🚀

Читать далее

Решаем задачу моментальной навигации по коду для любого коммита

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров7.7K

Привет, Хабр! Меня зовут Ольга Лукьянова, я работаю в Yandex Infrastructure, в команде, которая делает системы, сервисы и инструменты для разработчиков. Недавно Яндекс анонсировал новый продукт SourceCraft, который уже собирает вокруг себя сообщество. Последний год я руковожу группой навигации по коду этого проекта.

Мои коллеги на конференциях уже рассказывали про планы развития SourceCraft — платформы от Яндекса для создания исходного кода, управления версиями, тестирования, сборки, развёртывания и сопровождения программных продуктов. А также показывали первый доступный компонент — интеллектуальный помощник для работы с кодом Yandex Code Assistant.
Я открою чуть больше деталей про возможности навигации в нашей платформе, которые появятся в публичном доступе в следующем году и помогут разработчикам не переключаться в IDE, а решать наиболее типовые задачи в одном интерфейсе. В статье — рассказ о том, как мы искали способы добавить функциональность навигации по коду при ревью пул-реквестов и каких результатов уже достигли. 

Читать далее

App.Farm CI. Часть I. Проблемы и выбор решений

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров1.5K

Привет, Хабр! На связи команда разработки App.Farm — продукта, созданного в РСХБ‑Интех. Хотели бы представить вам цикл статей о нем.

App.Farm — продукт по типу PaaS, необходимый для стандартизации процесса разработки бизнес‑приложений: от хранения исходного кода до запуска сервисов. Основные подсистемы платформы включают хранилище исходного кода и CI, хранилище артефактов, среду исполнения приложений, SSO, интеграционную подсистему, observability и т. д..

Подробнее ознакомиться с компонентами можно в обзорной статье, ранее опубликованной на Хабре: Как мы создавали PaaS‑платформу App.Farm. Сейчас мы бы хотели углубиться в детали реализации и поделиться с вами проблемами, которые мы решали, и как пришли к текущей архитектуре. Первый цикл статей мы решили посвятить одной из подсистем нашей платформы — App.Farm CI.

Читать далее

Размышления о декларативной конфигурации

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров2.2K

Не кажется ли вам, что декларативная конфигурация и программирование инфраструктуры не так уж хороши, как их расхваливают?

Я достаточно долго занимался декларативной конфигурацией в Kubernetesразмышлял о ней, работал с kubectl applyKRMkustomizeGoogle Cloud Config Synckptporch, ... В то же время параллельно развивалась декларативная автоматизация — эта работа велась в Google, где на протяжении многих лет широко использовалась декларативная конфигурация. При этом вне Google появился Terraform, и на этом лоскутном одеяле также возникло множество других инструментов.

Что же такое декларативная конфигурация, в каких случаях она хороша, и как к ней подступиться?

Читать далее

Как я оптимизировал свой конвейер CI/CD до выполнения за 60 секунд

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров6.1K

Как и многие, я храню свой код на GitHub. Пару лет назад я сделал простой пайплайн для сборки, анализа и тестирования моих веб‑приложений и сервисов. Он выполнял свою задачу, и так как это был мой первый опыт по настройке пайплайна CI/CD на GitHub, он сводился к одному шагу.

build (and deploy)

Со временем я стал замечать, что я стараюсь избегать вносить изменения в код. Будучи счастливым обладателем ADHD, я часто замечаю за собой сложность в решении задач с большим количеством препятствий и одним из них стало то, что выполнение пайплайна занимало больше 5 минут. Я коммитил изменения и шел делать кофе, пока пайплайн тестировал и деплоил код. И не всегда возвращался, отвлекаясь на другие вещи.

Я решил для себя, что максимальное количество времени, которое я готов ждать - 1 минута.

Читать далее

Коммитить нельзя сканировать: как мы боремся с секретами в коде

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров7.9K

Привет Хабр! Меня зовут Александр Карпов, я работаю в команде защиты приложений ИБ VK. Сегодня я хочу рассказать про наш процесс поиска секретов в каждом коммите в GitLab. У нас, как и у большинства компаний, был классический процесс борьбы с секретами – различные инструменты сканировали кодовую базу, и при обнаружении паролей, токенов и т.д. нам приходилось их ротировать. Главная проблема такого подхода в том, что проверить, действительно ли секрет был инвалидирован, не всегда возможно. По этой причине мы решили, что оптимально будет вычищать кодовую базу от любых секретов.

Читать далее

Как внести свой вклад в Open Source и стать полезным

Уровень сложностиПростой
Время на прочтение20 мин
Количество просмотров2.7K

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

Open Source — это не просто способ создания программного обеспечения, а целая культура инноваций, сотрудничества и обмена знаниями. Каждый, кто хочет внести свой вклад в эту динамичную среду, может сделать это вне зависимости от своего опыта или уровня технических навыков.

Как мобильный разработчик TAGES, я не раз сталкивался с миром Open Source, активно поддерживая и участвуя в различных проектах. Открытые инициативы становятся все более важными в современном процессе разработки программного обеспечения, создавая культуру инноваций, сотрудничества и обмена знаниями.

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

Читать далее

Книга: «Git: контроль версий. 3-е изд.»

Время на прочтение11 мин
Количество просмотров7.6K
image Привет, Хаброжители!

Рекомендуем ознакомиться с книгой «Git: контроль версий. 3-е издание»!

С «Git: контроль версий» вы освоите философию и фундаментальные принципы работы Git, а также получите продвинутые навыки по отслеживанию содержимого, совместной работе и управлению проектами в командах. В этой книге Прем Кумар Понуторай и Джон Лолигер предлагают подробный и пошаговый подход к изучению Git, начиная с фундаментальной философии этой системы и заканчивая продвинутыми командами Git и принципами, которые позволят лучше понять внутреннюю механику Git.

Глава 3 в книге полностью посвящена веткам. Создание веток в Git считается легковесной и недорогой операцией. Зачем они нужны, руководство по ветвлению, управление ветками – все это описано в книге.

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

Читайте с удовольствием!
Читать дальше →

Как мы уменьшили размер нашего Javascript монорепозитория в Git на 94%

Время на прочтение5 мин
Количество просмотров9.3K

Это не кликбейт. Мы и правда сделали это! В Microsoft мы работаем с очень большим монорепозиторием, который между собой называем 1JS. Недавно мы достигли 1000 активных пользователей в месяц, около 2500 пакетов и ~20 млн строк кода! Последнее клонирование репозитория вернуло невероятные 178 ГБ.

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

Вопрос в том, как это вообще произошло?!

Читать далее

Ближайшие события

(Не) безопасный дайджест Halloween Edition: стажер против «Скайнета», зарплаты призракам, монстры в открытом доступе

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров920

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

Читать далее

Jujutsu — новая система контроля версий

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров25K

Кому нужная новая VCS, когда уже есть Git, Mercurial, SVN, Perforce, Darcs и прочие? Автор проекта Jujutsu считает, что ещё есть куда рости. Знакомтесь — Martin von Zweigbergk из Google работает над проектом Jujutsu, или для краткости jj.

Чем он лучше чем ваша система контроля версия?

Читать далее

Git для самых маленьких

Время на прочтение6 мин
Количество просмотров11K

Дисклеймер: если ты продвинутый разработчик с Х годами опыта, пожалуйста, закрой эту статью. Здесь ты не найдешь абсолютно ничего полезного для себя.

Итак, небольшое вступление. Когда мне впервые пришлось делать коммит на GitHub, я помню, что перерыла кучу источников, и везде все было как-то не так, как в итоге сделала я.

В этой статье я расскажу о том, как сделать первый коммит на GitHub, и как делать последующие. Только мой опыт и сочетание консоли и фич IntelliJ Idea + у меня mac os, поэтому здесь именно про него (важно для установки).

Погнали.

Читать далее

Почему Mercurial не смог угнаться за Git (и чем они отличаются под капотом)

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров6.1K

Привет, я Александр, разработчик из команды Битрикс24. В этой статье разбираюсь в особенностях распределенной системы управления версиями Mercurial. Хотя она появилась одновременно с Git и похожа на него внешне, успеха достичь не смогла. Почему так получилось, как она работает, для каких проектов подходит — обо всем ниже. 

Читать далее

Определяем местоположение по коммитам в git

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров16K

Вот вам карты «возможного» местоположения разработчиков Telegram и React для затравки.

Telegram Desktop. Всего 205 человек. Из них 3 основные. Из них два (работают с 2014 и 2019) в районе Самара-Кавказ (Армения, Грузия, Азербайджан) и один (работает с 2018) вероятно в Турции.

ReactJS. Всего 1854 человек. Основной состав: 14 работает, 26 уволилось. Примерно 50/50 сидят на восточном и западном побережье США.

Читать далее

Как я использую git

Время на прочтение11 мин
Количество просмотров18K

Недавно я пытался объяснить коллеге, какие у меня критерии при формировании пул реквеста — когда стоит объединять что‑либо в один пул реквест, а когда нет. И я заметил за собой фразу «ну, кроме…» несколько раз и решил записать, как я использую git — чтобы разобраться в особенностях моего подхода, как я мог бы улучшить его и, возможно, поделиться чем‑то полезным.

Поскольку это интернет, давайте сразу обговорим: то, как я использую git основывается на последних 12 годах работы в компаниях с относительно небольшими (до 50 человек) командами. В каждой из них мы использовали только git и GitHub; изменения выполнялись в отдельных ветках, предлагались в виде пул реквестов и сливались в основную ветку. В последние несколько лет, после введения GitHub squash‑merging, мы использовали его.

Я никогда не использовал какую‑либо другую систему контроля версий. Я не могу и не буду сравнивать git с Mercurial, jj, Sapling, и т. д.

Итак, вот как я использую git.

Читать далее

Почему GitHub на самом деле победил: история глазами сооснователя

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров12K

Недавно мы опубликовали в блоге перевод статьи о том, как GitHub заменил SourceForge в роли доминирующей платформы для хостинга кода. Но, как справедливо отметил автор оригинала, его мнение основано на открытых источниках и интервью с коллегами. А потом своим ви́дением поделился один из сооснователей GitHub, Скотт Чакон, который «действительно был там». Под катом — перевод его ответной статьи о реальных причинах победы GitHub. 

Читать далее

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