Обновить README.md
This commit is contained in:
@@ -24,6 +24,7 @@
|
||||
Основные задачи:
|
||||
- Автоматическая регистрация вложенных репозиториев как подмодулей
|
||||
- Централизованное управление множеством репозиториев
|
||||
- Настройка игнорирования состояния подмодулей в основном репозитории
|
||||
- Автоматизация рутинных операций
|
||||
|
||||
---
|
||||
@@ -33,7 +34,7 @@
|
||||
### `register-submodules.sh`
|
||||
|
||||
**Описание:**
|
||||
Автоматически находит все вложенные Git-репозитории в текущей папке и регистрирует их как подмодули в `.gitmodules`.
|
||||
Автоматически находит все вложенные Git-репозитории в текущей папке и регистрирует их как подмодули в `.gitmodules`. Поддерживает настройку игнорирования состояния подмодулей.
|
||||
|
||||
**Использование:**
|
||||
```bash
|
||||
@@ -47,16 +48,40 @@
|
||||
| `--help`, `-h` | Показать справку |
|
||||
| `--dry-run` | Только показать, что будет сделано (без изменений) |
|
||||
| `--force`, `-f` | Принудительная перерегистрация подмодулей |
|
||||
| `--ignore=MODE` | Установить режим игнорирования для ВСЕХ подмодулей |
|
||||
| `--ignore-submodule PATH:MODE` | Установить режим для конкретного подмодуля |
|
||||
| `--remove-ignore` | Удалить все настройки игнорирования из .gitmodules |
|
||||
| `--verbose`, `-v` | Подробный вывод |
|
||||
| `--quiet`, `-q` | Минимальный вывод (только ошибки) |
|
||||
|
||||
**Режимы игнорирования (`MODE`):**
|
||||
|
||||
| Режим | Описание |
|
||||
|-------|----------|
|
||||
| `all` | Полностью скрывает изменения в подмодулях (не показывает ничего) |
|
||||
| `dirty` | Скрывает только изменения в файлах подмодуля |
|
||||
| `untracked` | Скрывает только неотслеживаемые файлы в подмодуле |
|
||||
| `none` | Показывает все изменения (поведение по умолчанию) |
|
||||
|
||||
**Примеры:**
|
||||
```bash
|
||||
# Базовая регистрация
|
||||
./register-submodules.sh
|
||||
|
||||
# Регистрация с игнорированием всех изменений в подмодулях
|
||||
./register-submodules.sh --ignore=all
|
||||
|
||||
# Регистрация с игнорированием только dirty-изменений
|
||||
./register-submodules.sh --ignore=dirty
|
||||
|
||||
# Установить ignore только для конкретного подмодуля
|
||||
./register-submodules.sh --ignore-submodule tools/cam:dirty
|
||||
|
||||
# Удалить все настройки игнорирования
|
||||
./register-submodules.sh --remove-ignore
|
||||
|
||||
# Просмотр без изменений
|
||||
./register-submodules.sh --dry-run
|
||||
./register-submodules.sh --dry-run --ignore=all
|
||||
|
||||
# Принудительная перерегистрация с подробным выводом
|
||||
./register-submodules.sh --force --verbose
|
||||
@@ -132,6 +157,25 @@ git submodule add https://git.p7net.ru/tools/git_man.git tools/git_man
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Особенности работы с подмодулями
|
||||
|
||||
### Настройка игнорирования в .gitmodules
|
||||
|
||||
После регистрации подмодулей в файле `.gitmodules` могут появиться секции с настройкой `ignore`:
|
||||
|
||||
```ini
|
||||
[submodule "tools/cam"]
|
||||
path = tools/cam
|
||||
url = https://git.p7net.ru/tools/cam.git
|
||||
ignore = dirty
|
||||
```
|
||||
|
||||
Это позволяет основному репозиторию игнорировать изменения в рабочей директории подмодулей, что особенно полезно при работе с большим количеством вложенных репозиториев.
|
||||
|
||||
**Важно:** Эта настройка не скрывает сами подмодули, а только их внутреннее состояние. Подмодули всегда остаются частью репозитория.
|
||||
|
||||
---
|
||||
|
||||
## 👤 Автор
|
||||
|
||||
**Michael BAG**
|
||||
|
||||
Reference in New Issue
Block a user