[devel] git и пустые каталоги

Led =?iso-8859-1?q?ledest_=CE=C1_gmail=2Ecom?=
Пт Окт 17 19:29:38 MSD 2008


On Friday, 17 October 2008 18:12:52 Dmitry V. Levin wrote:
> On Fri, Oct 17, 2008 at 05:41:37PM +0300, Led wrote:
> > Как в git обеспечить сохранение пустых каталогов?
>
> Непосредственно в git этого, скорее всего, не добиться.
> Мне не известно способа заставить git-write-tree включить пустой каталог.
> См. тж.
> http://git.or.cz/gitwiki/GitFaq#head-1fbd4a018d45259c197b169e87dafce2a3c6b5
>f9

Где-то так я и знал...

>
> > %build полагается на их присутствие и в них складываются скомпилированные
> > модули, при их отсутствии сборка "обламывается".
>
> mkdir -p?

Уже написал в предидущем посте: таких каталогов не один и их количество и 
местонахождение может меняться от релиза к релизу.

>
> > В вариант с
> > touch .gitignore в эти каталоги не подходит, потому что в этом случае:
> > 1) .gitignore попадают в %buildroot и, соответственно, в пакет
>
> Погрепав contents_index, будем считать, что это удовлетворённый FR:
> http://git.altlinux.org/people/ldv/packages/?p=rpm.git;h=maint

Спасибо. Можно надеяться, что это появится в ближайшее время в репозитариях?

>
> > 2) при каждом обновлении из апстрима перед коммитом придётся вручную
> > делать что-то наподобие:
> > find . -type d -empty -name ebin -exec touch \{}/.gitignore \;
>
> Зачем -name ebin?

Ну, в моём случае, это каталоги именем "ebin", просто разбросаны по дереву и с 
разным уровнем вложенности.

>
> Цитирую /usr/bin/gear-srpmimport:
>
> find "$subdir" -type d -empty -exec touch -- '{}/.gitignore' ';'
>
> Т.е. можно это делать автоматически.

Автоматически этом ожно сделать из src.rpm, получавтоматически - из тарболов. 
Как это сделать при импорте из апстримной SCM?

>
> > А если это не дискретные обновления из апстрима, а импорт из апстримовой
> > SCM?
>
> Добавление .gitignore при импорте лучше делать автоматически.

А exclude этих .gitignore при генерации тарбола для src.rpm из git'a можно 
сделать автоматически?

Вопрос не в том что "git хороший или плохой". Вопрос его применимости не 
столько к разработке "с нуля", а к сборке пакетов, источники для которых 
могут быть в любом формате и апстрим которых не обязательно следует "правилу 
git'а, гласящем, что пустых каталогов не бывает".:)

-- 
Led


Подробная информация о списке рассылки Devel