Как скопировать контент из .repo / manifest во время синхронизации репо? - PullRequest
0 голосов
/ 17 октября 2018

Согласно документу Манифест репо документ:

Базовая структура манифеста - это пустой репозиторий Git, содержащий один XML-файл default.xml в каталоге верхнего уровня..

В этом утверждении не говорится, что манифест (или репозиторий) ограничен хранением ТОЛЬКО файла default.xml и ничего больше.Похоже, что другие файлы могут быть добавлены в хранилище.

Я использую 'repo sync', чтобы оформить заказ в нескольких хранилищах Git.У меня в файле default.xml есть элемент «copyfile», который успешно копирует файл «export» из одного из моих репозиториев в каталог верхнего уровня.

Я хочу поместить файл README в .repo/ manifest, тот же каталог (и, следовательно, хранилище), что и default.xml.Это успешно.

Но я также хочу скопировать файл README из .repo / manifest в каталог верхнего уровня, аналогично тому, что делает элемент copyfile.Это не удалось.

Фактическая структура каталогов после 'repo init':

top-level-directory
└── .repo
    └── manifests
        ├── default.xml
        └── README.md

Желаемая структура каталогов после 'repo sync':

top-level-directory
├── export
├── .repo
│   └── manifests
│       ├── default.xml
│       └── README.md
├── layers
├── README.md <-- This is what I want to add
└── ...

Послемного экспериментируя, я решил, что это невозможно сделать.Самым близким к успеху было добавление репозитория Git для манифеста в default.xml в качестве проекта, а затем добавление элемента linkfile для предоставления символической ссылки на README.Это сделало структуру верхнего уровня:

top-level-directory
│── copy_of_manifests
│   ├── default.xml
│   └── README.md
├── export
├── .repo
│   └── manifests
│       ├── default.xml
│       └── README.md
├── layers
├── README.md -> copy_of_manifests/README.md
└── ...

Избыточность только заменила одну проблему другой.Не стоит хлопот.

...