Commit Graph

2 Commits

Author SHA1 Message Date
mk aa5052f073 Обновить register-submodules.sh
## 📋 Новые опции в скрипте

| Опция | Описание |
|-------|----------|
| `--ignore=MODE` | Установить режим игнорирования для ВСЕХ подмодулей |
| `--ignore-submodule PATH:MODE` | Установить режим для конкретного подмодуля |
| `--remove-ignore` | Удалить все настройки игнорирования |

### Режимы игнорирования (`MODE`)

| Режим | Что делает |
|-------|------------|
| `all` | Полностью скрывает изменения в подмодулях (не показывает ничего) |
| `dirty` | Скрывает только изменения в файлах подмодуля |
| `untracked` | Скрывает только неотслеживаемые файлы в подмодуле |
| `none` | Показывает все изменения (поведение по умолчанию) |

---

## 📝 Примеры использования

```bash
# 1. Регистрация с игнорированием всех изменений
./register-submodules.sh --ignore=all

# 2. Регистрация с игнорированием только dirty-изменений
./register-submodules.sh --ignore=dirty

# 3. Установить ignore только для конкретного подмодуля
./register-submodules.sh --ignore-submodule tools/cam:dirty

# 4. Удалить все настройки игнорирования
./register-submodules.sh --remove-ignore

# 5. Комбинация: регистрация + игнорирование
./register-submodules.sh --ignore=all --verbose

# 6. Только обновить ignore для существующих подмодулей
./register-submodules.sh --ignore=dirty --dry-run
```

---

## 📊 Пример вывода

```
============================================================
📦 Регистрация вложенных репозиториев как подмодулей
============================================================

🔧 Режим игнорирования для ВСЕХ подмодулей: all
   → полностью скрывает изменения в подмодулях

▶ Поиск вложенных репозиториев...
 Найдено 15 вложенных репозиториев

▶ Регистрация подмодулей...

 Регистрация: diadoc.ext.rhana
   URL: https://git.p7net.ru/1c/diadoc.ext.rhana.git
 Подмодуль зарегистрирован: diadoc.ext.rhana
 Установлен ignore=all для diadoc.ext.rhana

 Регистрация: tools/cam
   URL: https://git.p7net.ru/tools/cam.git
 Подмодуль зарегистрирован: tools/cam
 Установлен ignore=all для tools/cam

...

============================================================
📊 Статистика
============================================================
   Всего найдено:     15
   Зарегистрировано:  12
   Пропущено:         2
   Без URL:           1

🔧 Режим игнорирования: all
   Файл .gitmodules обновлён

 Подмодули зарегистрированы!

Следующие шаги:
  1. Проверьте изменения:   git status
  2. Посмотрите подмодули:  git submodule status
  3. Закоммитьте изменения: git commit -m "Зарегистрированы все подмодули"
  4. Отправьте на сервер:   git push
============================================================
```

---

## 📄 Структура `.gitmodules` после настройки

```ini
[submodule "diadoc.ext.rhana"]
    path = diadoc.ext.rhana
    url = https://git.p7net.ru/1c/diadoc.ext.rhana.git
    ignore = all

[submodule "tools/cam"]
    path = tools/cam
    url = https://git.p7net.ru/tools/cam.git
    ignore = all
```

Теперь скрипт полностью управляет подмодулями, включая настройку игнорирования их состояния в основном репозитории! 🚀
2026-07-19 08:33:14 +00:00
mk 33c2b993c2 first commit 2026-07-19 11:23:24 +03:00