Subversion vs. Git: Myths and Facts утверждает, что развеивает некоторые мифы о системах контроля версий. Я усомнился в их «фактах» и проверил некоторые из них. Результатом проверки стал подорванный авторитет сайта, и скептическое отношение к остальным утверждениям.
Читать полностью »
Рубрика «Git» - 30
Subversion vs. Git: Развенчивание мифов о развенчивании мифов
2017-01-28 в 17:14, admin, рубрики: Git, svn, Системы управления версиямиМейнтейнеры не масштабируются
2017-01-21 в 18:15, admin, рубрики: drm/i915, Git, linux, open source, Дэниел Веттер, иерархическая модель, мейнтейнеры, управление проектами, Управление сообществом, ядро Linux
Система разработки и поддержки ядра Linux не так идеальна, как хотелось бы. Почему бы не улучшить нынешнюю систему, используя в качестве эксперимента успешный опыт других проектов? С таким предложением выступил разработчик Дэниел Веттер (Daniel Vetter). Он подготовил доклад на эту тему для конференции LCA 2017 (слайды), а также опубликовал более подробный текст в блоге.
Дэниел Веттер последние несколько лет занимается поддержкой драйвера ядра для графики Intel drm/i915, он работает в Intel Open Source Technology Center. Драйвер drm/i915 поддерживают два мейнтейнера, а примерно 19 разработчиков имеют право коммитить патчи сразу в основную ветку. «Это вполне нормальная ситуация для сообщества open source, но совершенно немыслимое дело для ядра Linux», — говорит Дэниел. Он считает, что такая организация работы над драйвером вполне успешно себя проявила и её вполне можно использовать в других местах. Например, в ядре Linux, где сейчас на мейнтейнеров приходится слишком большая нагрузка.
Читать полностью »
SQL инъекция в GitHub Enterprise
2017-01-18 в 6:55, admin, рубрики: bug bounty, Git, github, взлом, информационная безопасность, реверс-инжиниринг
Привет Хабр,
Ниже рассказ автора Orange Tsai о том, как он целенаправленно искал уязвимость в корпоративной версии GitHub и в итоге обнаружил возможность SQL инъекции. Тут, на хабре, ранее уже публиковался перевод другой его статьи "Как я взломал Facebook и обнаружил чужой бэкдор".
Читать полностью »
Малоизвестные Git-команды
2017-01-07 в 16:53, admin, рубрики: cvs, Git, github, shell, Блог компании Mail.Ru Group, никто не читает теги, Системы управления версиями
У Git есть строгие обязательства по обратной совместимости: многие продвинутые возможности скрыты за разнообразными опциями, а не применяются как поведение по умолчанию. К счастью, Git также поддерживает и алиасы, так что вы можете создавать свои собственные команды, которые делают всю характерную для Git магию. Под катом — подборка полезных (или как минимум забавных) алиасов, определённых в моём .gitconfig.
Читать полностью »
Вышел GitLab 8.15
2017-01-03 в 7:37, admin, рубрики: deploy, Git, gitlab, open source, release, version control, version control systems, Блог компании Softmart, системы сборки, Системы управления версиямиВ последнем релизе уходящего года мы завершаем наш Мастер-план и хотим показать вам кое-что интересное из того, над чем мы работали.
В GitLab 8.15 появилась фича Auto Deploy – автоматизированная настройка развертывания и приложений для ревью (Review Apps). Для проекта на Ruby on Rails такая настройка займёт меньше минуты. Посмотрите, как это работает, в видео на 1:42.
Вдобавок, доступ к вашим средам (environments) стал быстрее и проще: через терминал непосредственно в GitLab (там же на 5:18)
Мы хотим дать каждому возможность использовать всю мощь контейнеров (containers), непрерывной интеграции и развертывания (continuous integration and deployment, сокращенно CD/CI), приложений для ревью (review apps) и планировщиков контейнеров (container schedulers). В GitLab 8.15 мы взяли на себя всю сложную работу по настройке, и вся она происходит совершенно прозрачно. В демонстрационном видео мы настраиваем и разворачиваем Ruby-приложение с review apps, несколькими средами и чатопсом (chatops, управление инфраструктурой через интеграцию с чатом) на кластер Kubernetes примерно за 12 минут. Без GitLab такая задача обычно занимает дни, если не недели.
Для большинства из нас декабрь — месяц праздников и подарков. GitLab тоже получил в подарок много новых фич.
День добрый. Большинство продуктов, с которыми сталкивается разработчик, обычно требуют развертывания на нескольких машинах, которые работают независимо друг от друга. Это порождает одну из типовых проблем — расхождение базы данных на разных серверах, несоответствие идентификаторов в таблицах-справочниках и разумеется неоднородность в силу невнимательности и пропущенных патчей при обновлении БД на конкретной машине. В некоторых случаях это выливается в дикие (на мой наивный взгляд) концепции типа «мы столбцы никогда не удаляем — только добавляем».
В других и вовсе приводит к засорению базы мусором с других площадок и к ошибкам после «простейшего мержа».
Знакомых с такими ситуациями, критиков и знающих точно, что я изобрел велосипед — приглашаю под кат.
Читать полностью »
Использование Github в качестве хранилища пользовательских данных
2016-12-15 в 5:20, admin, рубрики: angular, api, Git, github, markdown, open source, rest, yii, книги, ненормальное программирование, открытые данные, Программирование, Системы управления версиями, хранение данных
Выбирая сервис для хранения моих данных, важной составляющей является то, как долго такой сервис будет жить. От него нужно, чтобы я смог хотя бы прочитать сохраненные данные даже если энтузиазм авторов проекта закончится вместе с деньгами для оплаты хостинга и базы данных. С таким подходом для своего проекта я искал сервисы баз данных, которые могли бы хранить пользовательские данные бесплатно. Многообещающим проектом был Parse.com, о котором я уже писал ранее в статье «Сайт без бекенда». Но в январе 2016 мы узнали, что Parse.com проживет только один год и будет закрыт. В связи с этим я решил перевести хранение данных пользователей в git-репозиторий, который опубликован на Github.
Сегодня утром можно было удалить возможно любой репозиторий на GitHub
2016-12-13 в 19:01, admin, рубрики: Git, github, open source, информационная безопасность, криворукость, РЕШЕТО, фейлыСегодня утром, 13 декабря 2016 года, пользователь GitHub XXXXX(никнейм скрыт по просьбе) решил удалить форк репозитория xash3d из организации FWGS, в которой не имеет прав на изменение настроек репозиториев. В поле подтверждения он ввёл XXXXX/xash3d, чтобы удалить свой форк. После этого GitHub перенаправил его на страницу его форка, а главный репозиторий был бесследно удалён.
Вышел GitLab 8.14
2016-12-12 в 8:10, admin, рубрики: Git, gitlab, open source, release, version control, Блог компании Softmart, системы сборки, Системы управления версиямиПредставьте, что вы делаете ревью кода новой фичи. Помимо качества ее кода вам также интересно, как она будет выглядеть и работать в вашем продукте и насколько удобно будет ее использовать. Раньше вам пришлось бы прервать процесс разработки на собственной рабочей машине, сделать checkout на проверяемую ветку, провести нужные миграции БД и запустить всю рабочую среду (development environment), необходимую для приложения. Теперь вам будет достаточно зайти в мерж-реквест этой ветки на GitLab. Там будет ссылка на уже работающее приложение, развернутое в отдельной среде.
Наконец, ревью завершено, и вы даете коллеге обратную связь в чате.
Вместо того, чтобы решать, кто из вас пойдет заводить новую задачу в трекере, вы можете создать задачу и оценить время на ее разработку, не выходя из чата. Аналитика цикла разработки (cycle analytics) сразу учтет данную оценку и будет показывать вам весь путь задачи до выпуска на production, сообщая о возможных узких местах.
Все это и многое другое возможно в новой версии GitLab 8.14. В ней появился учет рабочего времени, приложения для ревью (Review Apps), команды чата (chat commands) и новые возможности аналитики цикла разработки.Читать полностью »
GitLab Flow
2016-12-02 в 7:16, admin, рубрики: Git, git workflow, git-flow, gitflow, github, gitlab, Блог компании Softmart, Системы управления версиямиЭто перевод достаточно важной статьи про GitLab Flow, альтернативе Git и GitHub flow. Статья была написана в 2014, так что скриншоты успели устареть. Тем не менее сама статья более чем актуальна:
Ветвление и слияние веток в git устроено гораздо проще, чем в более ранних системах контроля версий, таких как SVN. Поэтому есть много способов организации командной работы над кодом, и большинство из них достаточно хороши. По крайней мере, они дают много преимуществ по сравнению с тем, что было до git. Но сам по себе git — не серебряная пуля, и во многих командах организация рабочего процесса с git имеет ряд проблем:
- Не описан точным образом весь рабочий процесс,
- Вносится ненужная сложность,
- Нет связи с трекером задач (issue tracker).
Мы хотим представить вам GitLab flow — чётко определённый набор практик, решающий эти проблемы. Он объединяет в одну систему:
- Практику разработки, управляемой функциональностью (feature driven development),
- Использование feature-веток (feature branches),
- Трекер задач.
