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

Git *

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

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

Пишем Telegram Bot для оповещения о коммите в git репозитарий на базе Gitea и разворачиваем его в Google Cloud Platform

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

Здравствуйте как и обещал в продолжение моей статьи о Автоматической публикации приложения в Google Play , рассмотрю в деталях процесс написания Telegram Bot`a для оповещения команды тестировщиков о выпуске новой версии.

Читать далее

GIT-ветвление и попытка не запутаться

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

Всем доброго дня!

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

Перейти к схеме

git-ssb — децентрализованный хостинг git-репозиториев

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

SSB (Secure Scuttlebutt) - это децентрализованная социальная сеть и протокол, на основе которого она работает. git-ssb заворачивает обычные git-репозитории в этот протокол. SSB хочет заменить собой Facebook, а git-ssb - GitHub. Под катом - краткое руководство по git-ssb. Актуально для тех, кому дискомфортна сама идея использования централизованных сервисов в качестве посредника. Своеобразная красная таблетка с полагающимися в этом случае неожиданными последствиями.

Wake up, Neo …

Учимся писать информативные комментарии к GIT-коммитам используя общепринятую семантику

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

Когда я только знакомился с системами контроля версий (особенно с git), я рассматривал их только как приложения, которые помогают мне хранить историю изменений моего кода. Т.е. когда случается что-то нехорошее, я могу просмотреть историю коммитов и вернуться к последнему «хорошему» состоянию кода в моем репозитории.

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

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

Читать далее

Вышел релиз GitLab 13.7 с проверяющими для мерж-реквестов и автоматическим откатом при сбое

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

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


Ну и год же был 2020! Мы счастливы представить релиз 13.7 с более чем 45 фичами и улучшениями поставки ПО, вышедший как раз к праздникам.


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


Благодарим вас и всех членов команды GitLab, которые помогли сделать 2020 год невероятным, несмотря на невзгоды и непредсказуемые обстоятельства. Пожалуйста, оставайтесь в безопасности, будьте счастливы и здоровы в этот праздничный период.

Читать дальше →

Поддержание аккуратной истории в Git с помощью интерактивного rebase

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

Interactive rebase — один из самых универсальных инструментов Git'а. В этой статье от автора Git-клиента Tower рассказывается, как корректировать сообщения при коммитах и исправлять свои ошибки.

Читать далее

Как в MGA в 5 раз быстрее реализуют проекты при помощи GitLab

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


Как в MGA в 5 раз быстрее реализуют проекты при помощи GitLab


Благодаря переходу на GitLab в MGA внедрили практики CI/CD, повысили качество ПО, создали процесс обмена знаниями и сэкономили средства.


Oбзор

В MGA перешли на GitLab с целью улучшения качества и сокращения сроков разработки с использованием автоматизированных процессов CI/CD.
Читать дальше →

VK Tech 2020: год разработки в числах Git

Время на прочтение1 мин
Количество просмотров2K
Завершаем год доброй традицией — рассказываем в числах Git, каким он выдался для разработки.


Бранч-стратегии при разработке в Git

Время на прочтение4 мин
Количество просмотров27K
Если каждый член команды будет создавать ветки в Git так, как хочет, это обязательно приведет к хаосу и несогласованности. Чтобы избежать этого, лучше сформулировать и принять соответствующую бранч-стратегию — так вы сможете больше времени уделять разработке, а не управлению версиями. Нужно принять тот факт, что стратегия ветвления — важный рабочий инструмент.


Читать дальше →

DVC vs GIT. Почему GIT'а недостаточно в проектах машинного обучения

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

Содержание



Введение


Несмотря на всю пользу DVC, об этом инструменте знает катастрофически мало разработчиков. Поэтому, думаю, не лишним будет для начала вас познакомить. DVC – это open-source система контроля версий данных, которая отлично подходит для машинного обучения. И основное отличие DVC от Git’a в том, что он: во-первых, имеет более широкий и удобный инструментарий для ML-проектов; во-вторых, создан для контроля версий данных, а не кода. И по большей части здесь их основные различия заканчиваются. А далее я постараюсь описать, чем же так хорош DVC, и почему Git'а не достаточно для ML.

Читать дальше →

Git, я хочу все отменить! Команды исправления допущенных ошибок

Время на прочтение4 мин
Количество просмотров56K
image

Git — удобная, но довольно сложная система. Сложность, прежде всего, в том, что по невнимательности можно допустить ошибку, которую затем сложно или вообще невозможно исправить. Документация Git предоставляет описание множества команд, которые дают возможность исправить ошибку.

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

Trunk Based Development и Spring Boot, или ветвись оно все по абстракции

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

Всем привет!

Закончилась осень, зима вступила в свои законные права, листья уже давно опали и перепутанные ветви кустарников наталкивают меня на мысли о моём рабочем Git репозитории… Но вот начался новый проект: новая команда, чистый, как только что выпавший снег, репозиторий. "Тут все будет по другому" - думаю я и начинаю "гуглить" про Trunk Based Development.

Если у вас никак не получается поддерживать git flow, вам надоели кучи этих непонятных веток и правил для них, если в вашем проекте появляются ветки вида "develop/ivanov", то добро пожаловать в под кат! Там я пробегусь по основным моментам Trunk Based Development и расскажу о том, как реализовать такой подход, используя Spring Boot.

Читать далее

История потерянного коммита

Время на прочтение7 мин
Количество просмотров19K
Был уже вечер, когда ко мне обратился разработчик. Из мастер-ветки пропал патч — коммит deadbeef.



Мне показали доказательства: вывод двух команд. Первая из них —

 git show deadbeef 

— показывала изменения файла, назовём его Page.php. В него добавились метод canBeEdited и его использование.

А в выводе второй команды —

 git log -p Page.php 

— коммита deadbeef не было. Да и в текущей версии файла Page.php не было метода canBeEdited.

Не найдя решения быстро, мы сделали ещё один патч в мастер, разложили изменения — и я решил, что вернусь к проблеме на свежую голову.
Читать дальше →

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

.Использование GitHub в обучении. Примеры. Часть I

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

В своей статье "Использование GitHub в обучении студентов" я кратко коснулся темы использования GitHub'а именно как инструмента для обучения, а не как темы в обучении. Сейчас хочу попробовать привести примеры нескольких кейсов.

Начну с относительно простого варианта, а в следующих статьях расскажу про другие варианты.

Читать далее

Использование GitHub в обучении студентов

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

В своей преподавательской практике использую GitHub...

Но для начала давайте представлюсь. Зовут меня Старинин Андрей. И я преподаю программирование, хотя по первому образованию я биолог.

Читать

Статьи — это тоже исходный код {

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

Title


Открываю VS Code и начинаю набирать статью с самого начала. Но вот незадача — формат маркдауна не совсем совместим с имеющимся форматом Хабра. Получается выхода нет и придётся возвращаться к встроенному редактору Хабра;


Или не придется?

В голову пришла идея написать утилиту, которая конвертирует разные форматы маркдаунов друг в друга, например, из формата GitHub в формат Habr;


Такую программу я в итоге и разработал. Теперь не надо копировать статьи в редактор Хабра, чтобы посмотреть как она выглядит, можно продолжать писать в любимом VS Code;


Хотя я и использую множество плагинов VS Code, но мысли о неэффективном процессе написания статей не исчезли. Раз уж я набираю текст в VS Code, то почему бы сразу не делать коммиты контента в гит-репозиторий?


Это дало бы немало новых возможностей, которыми пользуются программисты: версионирование, бекапы на локальные носители или веб-сервисы, правки от редакторов и пользователей. А еще можно внедрить CD/CI;


В итоге, я написал небольшой гайд для разработчиков, как писать техническую документацию в редакторах, используя мою утилиту. Саму утилиту можно посмотреть в моём репозитории на GitHub;

Читать дальше →

HelmWave v0.5.0 – GitOps для твоего Kubernetes

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

preview


Helm, как и Docker стал де-факто стандартом в индустрии. Тоже самое и с Kubernetes (52% доля в нише). И новость, что Docker is deprecated вызвало волну обсуждений в сообществе. Настолько все привыкли к Docker.

Читать дальше →

Когда твой код стал общим: история от дебюта до эндшпиля

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


«Отстаньте от меня, пожалуйста, я — творец! Дайте мне творить!», — программист Геннадий уже третий раз за вечер проговаривает эту мантру у себя в голове. Тем не менее пока что он не написал ни одной строчки кода, потому что в библиотеку, которую пытается развивать, прилетел еще один пулл-реквест. А, согласно политике компании, ревью кода должно проходить с минимальными задержками. Теперь Геннадий думает, как поступить: не глядя принять изменения, так же не глядя их отклонить или все-таки потратить драгоценное время, чтобы разобраться в их сути. Ведь кто, кроме него? Он этот код написал, он за ним и будет следить. А все изменения возможны только через его персональное согласие, ведь это Библиотека Судного Дня. 
Читать дальше →

Миграция приложений и аварийное восстановление с помощью Red Hat Advanced Cluster Management (ACM)

Время на прочтение6 мин
Количество просмотров800
Всем привет! В предыдущем посте мы рассказали, как применять ACM для сине-зеленого развертывания, миграции приложений между кластерами и аварийного восстановления.



Сегодня покажем, как с помощью ACM провести бесшовную миграцию приложения reversewords между нашими кластерами и рассмотрим, как с помощью PlacementRules реализовать базовый сценарий аварийного восстановления.
Читать дальше →

Вышел релиз GitLab 13.6 с автоматическим развёртыванием в EC2 и статистикой использования для инстанса

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

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


Команда GitLab стремится к повышению производительности и степени удовлетворённости разработчиков. Релиз 13.6 содержит все необходимые ингредиенты, которые помогут вам достичь этого и, возможно, чего-то ещё! Мы надеемся, что вам пригодятся основные фичи релиза, а также ещё более 60 новых фич и улучшений, добавленных в этом релизе.

Читать дальше →

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