Как стать автором
Обновить
28.49

Git *

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

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

Оффлайновое использование Git

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

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

Система контроля версий Git вполне благополучно работает без удалённого репозитория. Такова её природа. При таком подходе можно создавать ветви репозитория, можно индексировать файлы и коммитить их в репозиторий. Всё выглядит так же, как и при обычной работе.

Читать далее
Всего голосов 38: ↑36 и ↓2 +34
Комментарии 17

Новости

Вышел релиз GitLab 16.8 с поддержкой менеджера секретных ключей GCP и возможностью ускорения сборок с прокси зависимосте

Уровень сложности Средний
Время на прочтение 13 мин
Количество просмотров 2.2K
Читать дальше →
Всего голосов 8: ↑6 и ↓2 +4
Комментарии 0

Как мы управляем инфраструктурой на более 1000 серверов при помощи Ansible

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

Привет, Хабр! Мы системные инженеры X5 Tech — Алексей Кузнецов и Борис Мурашин. У нас за плечами больше 15 лет опыта, в том числе поддержка сервисов Rapida, CyberPlat, TeleTrade, сопровождение стека BigData и внедрение кластеров Hadoop. В этой статье мы расскажем, как выбирали систему управления конфигурациями, какими критериями руководствовались, что в итоге выбрали, с какими проблемами столкнулись и как их решали.

Рассматривать вопрос, зачем вообще нужна система управления конфигурацией, не будем. Потому что считаем, что если у вас больше одного сервера, она уже необходима. Перейдём сразу к тому, почему мы выбрали именно Ansible.

Читать далее
Всего голосов 34: ↑34 и ↓0 +34
Комментарии 22

Как мы упаковали управление аджайл проектов в стандартную версию GitLab

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

Привет, меня зовут Анастасия, я руководитель проектов в команде разработки Ареал. 

Моя ежедневная среда для управления проектами — задачник, оперативник, баг-репорт, gitlab с описаниями задач программистов, kaiten с описанием задач дизайнеров и проектировщиков. Мои коллеги сталкиваются с таким же “зоопарком” площадок, поэтому мы решили поэкспериментировать и свести управление в один инструмент — gitlab. Большинство команды знакомо с gitlab — программисты работают с кодом, проджекты ставят задачи. 

Читать далее
Всего голосов 6: ↑4 и ↓2 +2
Комментарии 2

Истории

Darcs и Pijul. Системы контроля версий для тех, кто любит математику и не любит деревья

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

Небольшой обзор систем контроля версий, альтернативных git, и основанных на математической теории. Речь пойдёт о двух системах распределённого контроля версий: Darcs, написанной на Haskell, и Pijul, написанной на Rust. Обе они сейчас активно развиваются и предлагают свои сетевые репозитории. Оказалось, что про них на Хабре толком нет ничего, тогда как про git образовался целый хаб. Поскольку я люблю и использую Haskell, я остановил свой выбор на Darcs, и вот, спустя два месяца непрерывной работы над библиотекой геометрической алгебры для hackage, я готов поделиться впечатлениями от её использования.

Читать далее
Всего голосов 26: ↑26 и ↓0 +26
Комментарии 24

Делаем разработку на Rust еще более потной с помощью git

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

Rust же создавали, чтобы держать программиста в ежовых рукавицах? Так почему бы не заставить git скооперироваться с Rust и не издеваться над программистом на пару?

На самом деле статья не сколько про Rust, сколько про git, поэтому если вы не особо знакомы с Rust, не смущайтесь сильно — повествование будет скорее про флоу разработки нежели чем про язык. Rust в статье выбран скорее за его удобный пакетный менеджер cargo, который сделает суть повествования лаконичнее и нагляднее.

Читать далее
Всего голосов 19: ↑16 и ↓3 +13
Комментарии 13

Вышел релиз GitLab 16.7 с GitLab Duo Code Suggestions в общем доступе и бета-версией каталога CI/CD

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

GitLab 16.7


Вышел релиз GitLab 16.7 с GitLab Duo Code Suggestions в общем доступе и бета-версией каталога CI/CD


На этот раз мы с радостью объявляем о релизе GitLab 16.7 с фичей GitLab Duo Code Suggestions в общем доступе, бета-версией каталога CI/CD, новым детальным представлением графиков отчётов Insights, результатами сканирования SAST в представлении изменений мерж-реквеста и многими другими фичами!

Читать дальше →
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 6

Создание атомарных коммитов в Git

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

Мы все были там: Вы работали над множеством изменений одновременно, некоторые из которых не имели ничего общего. Для удобства вы решили объединить все эти изменения в один коммит и на этом закончить. Но хотя это может показаться заманчивым, на самом деле это может привести к большим проблемам в дальнейшем. Большие коммиты могут:

Читать далее
Всего голосов 34: ↑31 и ↓3 +28
Комментарии 41

Непрерывная интеграция при разработке RTL-модулей

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

Создание цифровых устройств, как правило, представляет из себя итеративный процесс. Требования к устройству частично могут измениться уже на этапе его разработки. Также часто приходится модифицировать RTL-код после получения отчетов от инструментов синтеза и имплементации. По этой причине желательно предпринять определенные шаги для облегчения поддержки кода и внесения возможных изменений. Иными словами, нужно настроить процесс непрерывной интеграции. В этой статье на примере Github Actions и разработанного нами ранее сумматора с AXI-Stream интерфейсами мы поговорим о том, как может выглядеть процесс непрерывной интеграции при создании цифровых устройств.

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

Инструкция: как поднять GitLab CI/CD на GoLang-проекте

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

В продолжение к заметке Инструкция: как быстро настроить GitLab CI/CD на Flutter-проекте.

Больше спасибо автору, всё получилось относительно легко. Я усложнил задачу: поднял GitLab локально на Хакинтоше, прикрутил executor = "docker" вместо "shell". И началось веселье.

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 3

Вышел релиз GitLab 16.6 с новой фичей GitLab Duo Chat (бета)

Уровень сложности Средний
Время на прочтение 15 мин
Количество просмотров 2.9K
Читать дальше →
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 3

Размер пул-реквеста имеет значение

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

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

«Какого же размера он должен быть? Бывает ли идеальный размер? Если бы теоретически можно было полностью его контролировать, то насколько большим его нужно делать?»

Вы гуглите, находите множество ресурсов, сайтов и статей наподобие этой, которые анализируют тему и делают примерно такой вывод:

«Слишком маленькое количество строк может не отображать полностью изменения, а чрезмерно большой PR может утомить проверяющих, что усложнит выявление проблем или написание осмысленного отзыва»

И хотя вы понимаете логику автора, в то же время осознаёте, то теоретический ответ может быть лишь смутным, что «серебряной пули» не существует. Как всегда, в жизни всё сложнее.

Однако моя статья будет немного о другом:

«Мы проанализируем PR примерно 30 тысяч разработчиков, чтобы проверить, как размер PR коррелирует с временем внедрения, полученными комментариями и отказами во внесении изменений, чтобы найти статистически наилучший размер и понять, что на него влияет.»

Пояснение: тем, кто экспериментирует с данными, особенно после прохождения курсов/обучения в сфере данных, приведённое выше может напомнить о фразе «Корреляция не означает причинно-следственной связи». Да, они будут абсолютно правы. Мы попытаемся рассмотреть под разными углами, как эта корреляция варьируется в зависимости от компании, разработчика и общего объёма коммитов кода, а также под другими углами, которые могут помочь нам понять, какие другие значения могут по каким-то причинам отвечать соответствующим паттернам. Однако это «всего лишь» числа и корреляции, они не объясняют своих причин, поэтому любые наши предположения о причинах, скорее, субъективны и не подтверждены научными исследованиями.

Читать далее
Всего голосов 18: ↑17 и ↓1 +16
Комментарии 9

Три среды на бэкенде

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

Я уже не раз порывался написать что‑то общее про бранчинг; про некогда распиаренный GitFlow, который запиаривают обратно; про trunk‑based development (умеренно распиаривают), про то, как это увязать с разработкой бэкенда. И вот я затираю очередной забуксовавший черновик своей заметки чтобы всё упростить и не гоняться за чрезмерным обобщением опыта. Давайте я просто поделюсь рецептом, а вы его оцените.

Читать далее
Всего голосов 4: ↑2 и ↓2 0
Комментарии 17

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

One Day Offer от УЦСБ
Дата 17 февраля
Время 10:00
Место
Онлайн

Красота не только в коде — как оформлять репозиторий

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

Сегодня мы затронем сторону, отличную от написания кода. Мы займемся оформлением и написанием документации, как правильно делать коммиты и как оформлять код.

Все, что вы увидите в данной статье, будет касаться прочитанных мною материалов и полученного опыта.

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

В данной статье мы рассмотрим ключевые аспекты оформления документации в Git репозитории, обсудим лучшие методики и практики для создания качественной документации. Независимо от того, являетесь ли вы опытным разработчиком или новичком в области Git, эта статья поможет вам создать четкую, структурированную и информативную документацию для вашего проекта. Погружайтесь в мир оформления документации, улучшайте ваши проекты и делитесь своими идеями с сообществом разработчиков Хабр!

Узнать, как оформлять репозитории
Всего голосов 27: ↑20 и ↓7 +13
Комментарии 42

Как в git заменить master на другую ветку без использования push --force (перенос стейта одной ветки на другую)

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

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

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

Читать далее
Всего голосов 25: ↑21 и ↓4 +17
Комментарии 28

Вышел релиз GitLab 16.5 с отчётами о соответствии требованиям и правилами задания целевой ветки мерж-реквестов

Уровень сложности Средний
Время на прочтение 12 мин
Количество просмотров 3.7K
Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 0

Вас сдаст Гитхаб: деанонимизация пользователей SSH-серверов

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

Недавно в своих ежедневных чтениях я наткнулся на явление, о котором думал уже много лет: феномен утечки информации людей, использующих SSH. Этот тип утечки информации не является новым явлением. Я давно предупреждал об этой опасности своих друзей, использующих SSH, но мой голос услышали лишь несколько человек. Поэтому я решил дать пояснения по этому поводу, потому что я считаю, что необходимо понимать этот риск в ИТ-сообществе, особенно в нынешней ситуации. Я буду исходить из предположения, что у вас, дорогой читатель, есть опыт работы с SSH.

Читать далее
Всего голосов 87: ↑83 и ↓4 +79
Комментарии 153

Настраиваем Git server hook в GitLab On-Premise для защиты кода от вмешательства злоумышленников

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

Как убедиться в том, что коммиты в продуктовых репозиториях «настоящие»? То есть отправлены тем человеком, имя которого указано в коммите. Мы с коллегами из команды DevOps задались целью построить процесс, который будет давать нам полностью прозрачную картинку, и у нас это получилось. Эта статья довольно практическая, и решение, о котором я, Рамазан Ибрагимов, вместе с моим коллегой Александром Паздниковым пишу в этом материале, — лишь часть большой схемы по обеспечению безопасности. В качестве хранилища кода будем опираться на инстанс GitLab On-Premise внутри компании — вендора ПО.

Читать далее
Всего голосов 14: ↑14 и ↓0 +14
Комментарии 13

ИИ-помощники для работы с кодом

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

Инструменты на базе ИИ с открытым исходным кодом, которые призваны помочь вам в разработке проектов.

Читать далее
Всего голосов 11: ↑9 и ↓2 +7
Комментарии 2

Gitea & Act Runner: First touch

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

С версией 1.19 в Gitea появился собственный Github-подобный CI/CD. Насколько же трудно будет прикрутить к уже работающему Gitea серверу CI/CD. Давайте проверим!

Читать далее
Всего голосов 24: ↑24 и ↓0 +24
Комментарии 7

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