Интересно, скольким из вас приходилось хотя бы иногда, но повторять рутиные действия для настройки автодеплоя с гитхаба на сервер: создать ssh-ключ, добавить его для репозтория проекта на Гитхабе, создать скрипт, который будет слушать какой-то адрес, добавить вебхук в интерфейсе гитхаба, который будет дергать этот скрипт… Уфф… А что, если я скажу вам, что автоматизировал все эти действия по-максимуму? Да, теперь вам нужно выполнить всего пару команд и автодеплой запущен и работает! И все это благодаря Гитхабайзеру :)
Читать полностью »
Рубрика «Git» - 44
Githubizer: автодеплой с Гитхаба на сервер
2013-03-01 в 7:46, admin, рубрики: deploy, deployment tools, erlang, Erlang/OTP, Git, github, open source, tools, метки: deploy, deployment tools, erlang, Git, github, toolsПожаробезопасность в системах управления версиями
2013-02-28 в 9:53, admin, рубрики: csv, DVCS, Git, Mercurial, subversion, svn, VCS, Системы управления версиями, метки: csv, DVCS, Git, mercurial, subversion, svn, VCS
На сегодняшний день существуют два типа систем управления версиями: клиент-серверный и распределенный. Но несмотря на огромное различие между ними мы все-равно продолжаем использовать центральный сервер для синхронизации работы между участниками команды.
А что будет если в один прекрасный день центральный сервер сгорит?
Давайте это обсудим
Читать полностью »
Процесс разработки в Badoo
2013-02-27 в 13:18, admin, рубрики: badoo, Git, jira, php, teamcity, баду, Блог компании Badoo, Веб-разработка, процесс разработки, разработка, метки: badoo, Git, jira, PHP, teamcity, баду, процесс разработки, разработкаСегодня мы проведём экскурсию по цеху разработки Badoo, в котором создаётся новый функционал нашего сайта, расскажем о самом процессе — от постановки задачи и до момента выкладки в боевое окружение.
За время существования компании её рабочий процесс эволюционировал от стохастического к хорошо контролируемому и понятному. Ещё полтора-два года назад никто точно не мог ответить на вопрос, какие задачи попали в сегодняшнюю выкладку, а менеджер опрашивал программистов, кто и что выложил. Сейчас же процесс максимально автоматизирован, таск-трекер тесно связан с системой контроля версий, задачи проходят несколько стадий проверки. При этом сохранилась высокая скорость разработки: нормальной считается ситуация, когда задача появилась утром, а после обеда новый функционал уже доступен пользователям на сайте.
Читать полностью »
GitHub в роли репозитория артефактов
2013-02-26 в 14:02, admin, рубрики: dependencies, Git, github, maven, repository, разработка, метки: dependencies, github, maven, repository
Если вы часто используете maven, то наверняка сталкивались с ситуацией когда какого-нибудь нужного артефакта не оказывается в maven central. Конечно всегда можно установить недостающий джарник в ваш локальный репозиторий ~/.m2
, но это отрицательно сказывается на переносимости билда, ведь на машине коллеги, у которого данный jar не установлен, билд уже не соберется.
Так же есть возможность использовать в качестве зависимости локальный файл не из репозитория, но для этого в проекте его опять же необходимо где-то хранить, а пушить либы в source control не очень хорошо.
Но существет еще один вариант. Вы можите использовать один из своих репозиториев на Google Code или GitHub в качестве хранилища maven артефактов. Рассмотрим как это можно сделать Читать полностью »
Интерактивная обучалка ветвлению в Git
2013-02-17 в 20:42, admin, рубрики: Git, Системы управления версиями, метки: GitНекий Питер Коттл (Peter Cottle) сделал интерактивную обучалку по основам ветвления в Git. Есть несколько простых обучающих уровней, где нужно сделать пару коммитов, а затем merge или rebase, есть и сложные уровни, над которыми придется подумать. Можно также сохранять уровни и делиться ими с друзьями.
AIDA. Автоматизация работы с Git, JIRA и TeamCity
2013-02-14 в 13:02, admin, рубрики: badoo, continuous integration, Git, jira, teamcity, автоматизация тестирования, баду, Блог компании Badoo, Веб-разработка, тестирование, метки: badoo, continuous integration, Git, jira, teamcity, автоматизация тестирования, бадуПри разработке и тестировании какого-либо продукта появляется много рутинной работы. Чтобы избежать ошибок, связанных с человеческим фактором, мы используем AIDA.
AIDA (англ. Automated Interactive Deploy Assistant) — это учётная запись, значительно облегчающая работу с Git, TeamCity и JIRA.
Сегодня речь пойдет о том, как с её помощью нам удалось автоматизировать многие рабочие процессы.
В первую очередь мы вспомним об используемой в Badoo системе контроля версий, далее расскажем о том, как было автоматизировано создание веток релиза и осуществлено автоматическое слияние веток в Git, поговорим о существенной помощи AIDA в работе с JIRA (контроль и изменение статуса задач, заполнение полей) и ТeamCity (непрерывная интеграция и развёртывание на тестовое окружение).
Читать полностью »
Красивая консоль для работы с git под Windows
2013-02-12 в 7:25, admin, рубрики: bash, Git, howto, windows, кастомизация, консоль, Песочница, метки: bash, Git, howto, windows, кастомизация, консольВозможно кого-то, также как и меня, некоторые обстоятельства принуждают использовать Windows. И, возможно, также хочется несмотря на это видеть красивую, изящную консоль, например как в Ubuntu. Правда, на скорости работы, к сожалению, это не отобразится.
В итоге терминал для git у нас будет выглядеть примерно вот так:
Сходство и различие между Mercurial и Git
2013-02-07 в 17:45, admin, рубрики: Git, Mercurial, Системы управления версиями, управление конфигурацией, метки: Git, mercurial, системы управления версиями, управление конфигурацией По роду своей деятельности я нередко становлюсь свидетелем «священных войн» между коллегами-программистами на тему, какую же систему контроля версий выбрать для того или иного проекта. Роль системы контроля версий особо остро ощущается в случаях разработки и поддержки проектов с длинной историей. Вариантов инструментов много, но я хочу сконцентрироваться на двух, на мой взгляд, наиболее перспективных: Mercurial и Git. Далее попробуем рассмотреть возможности обеих систем с позиции их внутреннего устройства.
Читать полностью »
Китай организует Man-in-the-middle атаку против пользователей github
2013-01-31 в 1:18, admin, рубрики: Git, github, SSL, информационная безопасность, китай, криптография, цензура, метки: github, man in the middle, SSL, китай, цензура
Китай активно блокирует доступ к всяким страшным оппозиционным сайтам (Тянаньмей, 六四事件, 1989, баним Хабр в Китае). Для этого во всю используется DPI — глубокий анализ пакетов. Который позволяет не просто закрывать доступ к IP/доменному имени, а вырезать «лишнее», либо закрывать конкретные страницы. Если какой-то сайт (типа google) начинает использовать SSL, то SSL по этому направлению просто закрывают, оставляя пользователей с http-only.
Однако… Есть в мире сайты, которые Китай не рискует банить. Один из них — github. Если бан gmail или facebook оставит кого-то без любимой почты или возможности увидеть статусы друзей, то бан github'а оставит сотни и тысячи айтишных компаний без доступа к репозиториям open-source приложений и библиотек. А их на гитхабе уже over 5000000. Это означает простой в работе, или даже прекращение деятельности компании (мы-то знаем, что это не проблема, но китайцы свой файрвол воспринимают вполне серьёзно, и русский сценарий «мы всё запретим, а там дальше кому надо сам разберётся» не рассматривают).
При этом github использует SSL всегда. http доступа просто нет. Таким образом, прямой DPI не возможен, а некоторые товарищи, пронюхав про это, начали активно использовать github для обмена информацией о том, как обходить файрвол, адресами прокси-серверов и т.д.
Не желая мириться с подобным, Китай перенаправил трафик github на свои сервера. Разумеется, по HTTPS. И, разумеется, не имея сертификата гитхаба. Таким образом, пользователи китая начали получать предупреждения об ошибке сертификата, а китайская кровавая гэбня получила возможность читать и модифицировать чужие коммиты. Если, конечно, коммитящий или читающий, согласится с тем, что HTTPS с фальшивым сертификатом это нормально. Впрочем, вариантов (легальных) у него нет, т.к. другого варианта доступа к гитхабу не предусмотрено.
Это всё вместе называется man-in-the-middle. И это суровая китайская реальность.
Читать полностью »
Интеграция Team Foundation Services с Git и другие новые возможности
2013-01-30 в 19:13, admin, рубрики: Git, tfs, Visual Studio, Блог компании Microsoft, метки: Git, tfs Сегодня произошел большой шаг вперед в развитии Team Foundation Services — облачного сервиса Microsoft для разработчиков. Последние несколько месяцев команда TFS вела работу над новыми возможностями которые делают эти сервисы еще более проще, удобнее и эффективнее. Одним из самых громких нововведений является интеграция популярной системы контроля версий Git с сервисами TFS. Работа на этом не прекращается и в обозримом будущем будет добавлено еще много интересных функций.
Читать полностью »