1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/baidu-m-git

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

MGit

MGit — это инструмент для управления несколькими репозиториями Git, основанный на Ruby. Он позволяет эффективно и одновременно выполнять команды Git для нескольких репозиториев.

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

Преимущества MGit:

  • Простые в использовании команды. Команды MGit представляют собой обёртку над командами Git. Если вы знакомы с Git, то сможете легко освоить MGit.

  • Наглядное и эффективное выполнение команд. Результаты выполнения команд представлены в виде графиков, что позволяет разработчикам быстро просматривать результаты выполнения команд в разных репозиториях. Многопоточное параллельное выполнение команд для разных репозиториев повышает скорость извлечения данных из них благодаря механизму кэширования.

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

  • Расширяемость. MGit поддерживает загрузку пакетов ruby-gem в качестве плагинов. Плагины должны иметь имена в формате m-git-${suffix} или mgit-${suffix}. Это позволяет быстро расширять функциональность MGit, добавлять новые команды и расширять существующие. Кроме того, MGit предоставляет точки подключения (hook points), аналогичные git hook, для реализации пользовательской логики.

Быстрый старт

1. Установка MGit

Требования к среде:

  • Операционная система: macOS, Ubuntu (Windows пока не поддерживается).
  • Версия Ruby: >= 2.3.7.
$ gem install m-git

2. Инициализация нескольких репозиториев

Для инициализации нескольких репозиториев используется команда mgit init. Она работает аналогично команде Git clone для создания новых репозиториев, но клонирует несколько репозиториев одновременно.

Вот пример использования MGit для работы с демонстрационным проектом:

# 2.1 Рекомендуется создать новую папку для клонирования demo
$ mgit init -g https://github.com/baidu/m-git.git

# 2.2 Пример использования команд MGit
$ mgit -l                 # Показать все управляемые MGit репозитории
$ mgit branch --compact  # Посмотреть ветки в нескольких репозиториях
$ mgit status            # Проверить статус веток в репозиториях

3. Дальнейшее изучение MGit

Тестирование

Тестирование выполняется внутри репозитория MGit в папке test. Для создания нового теста необходимо создать файл с именем, начинающимся с «test_».

Чтобы выполнить тесты, используйте команду rake. Если возникают проблемы, попробуйте выполнить команду bundle install.

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

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

Требования к коду:

  1. Функциональность и реализация должны быть универсальными, а не специфичными для конкретного бизнеса.
  2. Качество кода должно соответствовать стандартам кодирования Ruby.
  3. Необходимо добавить соответствующие тестовые случаи.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

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

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/baidu-m-git.git
git@api.gitlife.ru:oschina-mirror/baidu-m-git.git
oschina-mirror
baidu-m-git
baidu-m-git
master