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

Системы управления версиями *

GIT, SVN и иже с ними

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

CodePlex закрывается

Время на прочтение3 мин
Количество просмотров22K
Это не первоапрельская шутка

Спустя 11 лет после того, как мы создали CodePlex, пришло время попрощаться. Мы запустили CodePlex в 2006 году, потому что мы, как и другие в отрасли, увидели необходимость в отличном месте для совместного использования программного обеспечения. На протяжении многих лет мы видели множество замечательных аналогов CodePlex, но на данный момент GitHub является де-факто местом для обмена файлами с открытым исходным кодом, и большинство проектов с открытым исходным кодом мигрировало туда.
Читать дальше →

8 советов для более эффективной работы с Git

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

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




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


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

Git — сравнение Visual Studio 2022 с MeGit/EGit и SourceTree

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

В этой статье мы сравним функциональность Git в IDE Visual Studio 2022 и в других клиентах Git с GUI. Git внутри VS2022 имеет упрощённый интерфейс по сравнению с некоторыми другими GUI-клиентами наподобие MeGit/EGit и SourceTree. Это привлекает многих разработчиков к платформе VS2022/Git, однако опытным пользователям дополнительно потребуются и другие инструменты.
Читать дальше →

Представлен GitHub Package Registry

Время на прочтение2 мин
Количество просмотров15K
Вышел GitHub Package Registry, сервис управления пакетами, который позволяет легко публиковать публичные или частные пакеты рядом с исходным кодом.

Реестр пакетов GitHub полностью интегрирован с GitHub, поэтому вы можете использовать те же инструменты поиска, просмотра и управления, чтобы находить и публиковать пакеты, что и при работе с репозиториями. Вы также можете использовать одни и те же пользовательские и командные права для совместного управления кодом и пакетами. GitHub Package Registry обеспечивает быструю и надежную загрузку, с поддержкой глобальной CDN GitHub. Кроме того, он поддерживает знакомые инструменты управления пакетами: JavaScript (npm), Java (Maven), Ruby (RubyGems), .NET (NuGet) и Docker (и другие на подходе).

Вы можете попробовать GitHub Package Registry сегодня в ограниченной бета-версии. Он всегда будет бесплатным для использования для Open-Source. Более подробная информация о ценах будет объявлена ​​в ближайшее время.

Попробовать бета-версию

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

Как и зачем красть деревья в git

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

trees


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

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

Полезности Mercurial

Время на прочтение5 мин
Количество просмотров37K
Думаю, почти все читающие знают, что такое Mercurial — это распределённая система контроля версий, для исходного кода и других (преимущественно текстовых) файлов. Многие ей пользуются, и знают основные команды, как то удаление/добавление файлов, создание коммита и отправка локальных изменений в другие репозитории. Однако, Mercurial имеет множество не столь известных функций и команд, которые часто достаточно полезны и удобны. Некоторые из них можно использовать сразу после установки по-умолчанию, некоторые нужно включить в настройках, а для других может потребоваться скачать дополнительное расширение.

Краткий список того, о чём пойдёт речь в статье:

  • hg serve (hgweb) — встроенный веб-сервер
  • расширения pager, progress и color
  • hg [c]record — выбор отдельных изменений для коммита
  • revsets и filesets — поиск коммитов и файлов с запросами любой сложности
  • hg evolve — Changeset Evolution или же «изменяемая история»


logo
Узнать подробности...

Опрос по системам контроля версий

Время на прочтение1 мин
Количество просмотров48K
Какие системы контроля версий Вы используете (для собственных проектов и для работы)?

Docker, GitLab, бесплатные SSL-сертификаты и другие плюшки современной веб-разработки

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

И снова здравствуйте! Почти пять лет уже не писал здесь новых статей, хотя, если честно, всегда знал, что рано или поздно начну это делать снова. Не знаю как вам, а мне все таки это дело всегда казалось довольно увлекательным.


Начинать написание нового материала после столь продолжительного отдыха от этого дела — труднее всего. Но раз цель поставлена — надо идти до конца. Начну немного издалека.


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


Под хабракатом вы найдете Quick Start по использованию Docker на уровне, необходимом для решения конкретных задач, обозначенных ниже, без углубления в "дебри" виртуализации и прочих сопутствующих тем. Если вы до сих пор хотите начать успешно использовать эту современную технологию, тем самым значительно упростив целый ряд процессов: от разработки веб-продуктов и до разворачивания и переноса оных под какое-либо современное оборудование — прошу под кат!


Opening Illustration - Docker

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

Гитхаб для правительств

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

От команды Гитхаба всё чаще слышны высказывания о том, что совместная разработка ПО — далеко не единственный сценарий применения их сайта. Сооснователь и CEO Гитхаба Том Престон-Вернер заявил недавно: «Мы хотим, сделать Гитхаб настолько гибким и простым, чтобы им могли пользоваться юристы, чиновники, кто угодно… Сейчас мы постоянно обсуждаем со множеством людей то, как они используют Гитхаб, и как ещё его можно использовать».

Уже есть несколько примеров использования Гитхаба не для разработки софта, а для написания книг, законов, публикации наборов данных. А 15 октября на Гитхабе открылся раздел government.github.com, специально предназначенный для проектов, связанных с электронным правительством, открытыми данными, гражданскими инициативами и законотворчеством. Список государственных учреждений, общественных организаций, правительств и муниципалитетов, использующих Гитхаб, уже насчитывает десятки наименований.
Читать дальше →

BRMS 150 лет назад и сегодня: репозитории правил принятия решений

Время на прочтение7 мин
Количество просмотров18K
Попытки освоить бизнес-логику для ИТ-систем начались в нашей стране примерно в 1820-х. Тогда один из основателей русской кибернетики статский советник (и сын инженера-полковника) Семен Николаевич Корсаков сделал две вот такие штуки:


Прямолинейный гомеоскоп


Простой компаратор

Это то, что мы бы сегодня назвали механическими зачатками современных экспертных систем. Помните новость про то, что IBM распространяет свой искусственный интеллект по больницам? Так вот, С. Н. Корсаков начал делать что-то похожее минимум за 150 лет до этого. Его идея была предельно проста: нужно раздать устройства врачам на местах, и тогда врачи смогут копить опыт вместе, не делать общие ошибки и вообще лечить по стандартам. Компаратор служил средством дифдиагностики, а более простой гомеоскоп мог выступать в роли автомата, куда врач заносил симптомы и получал на выходе заболевание.

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

Советы по фиксациям в SVN

Время на прочтение4 мин
Количество просмотров3K
Предлагаю перевод хорошей статьи с советами по выполнению фиксаций в хранилище. Оригинал написан для проекта T2, но практически все советы универсальны и легко применимы для любого другого проекта. А самое главное — они действительно полезны.

Upd: В названии статьи хоть и фигурирует SVN, но советы, изложенные в ней, подходят ко всем известным мне системам кондроля версий. Стоит так же заметить, что советы направлены в основном на командную разработку.

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

Kiln Harmony — Mercurial + git в одном репозитории

Время на прочтение3 мин
Количество просмотров10K
Fog Creek – компания созданная Джоелом Спольски и, возможно, известная вам по продукту Trello, на прошлой неделе представила свой новый проект державшийся долгое время в тайне: Kiln Harmony. Это хостинг Mercurial (hg) и git репозиториев. К сожалению, исключительно платный, есть только 45 дней пробного периода. В чём же новость, спросите вы, если Mercurial + git хостинги уже есть на рынке и, в том числе, бесплатные, как Bitbucket.org? Особенность Kiln Harmony в том, что один репозиторий на хостинге одновременно является и Mercurial и git репозиторием! По заявлениям разработчиков великий холивар закончен и теперь вы можете соредоточиться на кодинге, а не на выборе системы контроля версий. Push и pull в единый репозиторий размещённый на Kiln Harmony из вашей любимой системы контроля версий (Mercurial или git) не требует установки отдельных расширений, типа hg-git, или других особых телодвижений, вся магия происходит на сервере.
Читать дальше →

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

Вышел Subversion 1.5

Время на прочтение1 мин
Количество просмотров829

Из ключевых нововведений:
  • Отслеживание слияний (мержей)
  • Sparse checkouts (ограничение чекаутов по глубине дерева)
  • Интерактивное разрешение конфликтов
  • Поддержка списков изменений (changelists)

Также увеличение производительности и исправлена куча ошибок. Ура, товарищи!

Бинарников пока нет:
Probably the number one thing people are looking for is binaries. I assure you they are coming. CollabNet's binaries are certified and that process cannot begin until the official release is made. So our team is hard at work building and certifying the binaries. The tentative certification schedule is:
Linux: June 20
Windows: June 24
Solaris: June 26

Фанаты могут собрать сами из исходников.

PS: katremer в комментариях подсказал, что TortoiseSVN уже выпустила бинарники.
VisualSVN тоже обновились.

GUI для Git: подборка популярных решений

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

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

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

Читать далее

И полгода не прошло: выпущена система управления версиями Git 2.29

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

Привет, %username%, сегодня отличная новость: в открытом доступе появился выпуск распределенной системы управления версиями Git 2.29.0. Наверное, на Хабре не стоит рассказывать, что это такое, ведь Git по-прежнему остается одной из лучших систем.

В новом выпуске — сразу 627 изменений, которые внесли 89 разработчиков. О главных изменениях и доработках рассказываем под катом.
Читать дальше →

GitLab 8.11: канбан-доска и разрешение конфликтов одним кликом

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

Эта статья — перевод релизной статьи компании GitLab. Релизы выходят каждый месяц 22 числа.


Если вы пропустили предыдущие, вот ссылки: 8.10, 8.9, 8.8




В новом GitLab 8.11 столько всего интересного, что мы с трудом сдерживаем себя в рамках конструктивного повествования!


Итак, в новой версии появились:


  • принципиально новый новый способ представления и работы с тикетами (issues);
  • слеш-команды (/command) для работы с тикетами;
  • возможность создавать шаблоны тикетов (в неограниченном количестве);
  • онлайн-среда разработки;
  • возможность разрешать конфликты мержа не выходя из GitLab;
  • настройка прав на пуш в ветку для отдельных участников и групп (только в ЕЕ);
  • … и много других фич, о которых мы тоже расскажем.
Читать дальше →

Github теперь поддерживает Subversion

Время на прочтение1 мин
Количество просмотров2.4K
Github наc заинтересовал с тех пор, как части проекта www.azati.com мы стали выпускать под AGPL лицензией. 1 апреля этого года Github объявил поддержку Subversion в режиме «только для чтения» для своих репозитариев. До сегоднешнего дня я был уверен, что это была первоапрельская шутка. Но вчера они объявили, что ввели поддержку Subversion еще и в режиме записи. Похоже Github целится в лидеры и настроен на пользователей которые уже устали от Subversion, но еще не созрели на Git. Ведь врядли те, кто уже использует Github с Git захочет использовать Subversion. Однако теперь многие поклонники Google code будут думать над переездом. Набор инструментов для работы с Subversion не меняется, глядишь, потом и Git можно попробовать ничего не теряя.
Читать дальше →

Работа с ветками в SVN. Изменения в версии 1.5.

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

Долгое время в ветках SVN был один существенный недостаток. Система не помнила мержей, и программисту приходилось самостоятельно заботиться о том, что бы сохранить номер ревизии, когда происходило копирование изменений из транка. Проблема частично решалась добавлением комментариев в лог, но все таки это было чревато ошибками, и целиком ложилось на совесть программиста.
В версии 1.5, наконец-то, программисты Subversion выполнили свое давнее обещание, и добавили несколько полезных фич для работы с ветками.
Итак, в версии 1.5 команда merge обзавелась двумя новыми опциями: --record-only и --reintegrate.
Теперь ответственность за контроль копирования изменений ложится целиком на плечи SVN (merge tracking), а программист может легко, и без боязни выполнять merge так часто, словно это команда update.
Читать дальше →