Несколько репозиториев Git в одном каталоге

Я хотел бы развернуть каталог для нескольких разработчиков, имеющих разные разрешения. Так что это одна вещь, которую не может сделать w20. Как создать два репозитория в одном каталоге и присвоить им разные списки файлов, исключив файлы, управляемые другим репозиторием, с файлом .gitignore.

Пример: /www/project/.git для всех файлов, кроме /www/project/css /www/project/css/.git → только файлов в этом каталоге

Кто-нибудь пробовал это решение? Или есть ли какие-либо более эффективные способы решения этой проблемы?

Ответ 1

Менее раздражающий подход, чем git -подмодулы (которые являются болью для использования) gitslave Gitslave создает группу связанных репозитории - суперпроектный репозиторий и ряд ведомых репозиториев, все из которых одновременно разрабатываются и на которых обычно должны выполняться все операции git; поэтому, когда вы вступаете в ветки, каждый репозиторий в проекте разветвляется по очереди. Аналогично, когда вы совершаете, нажимаете, тянете, объединяете, отмечаете, проверяете, статус, журнал и т.д.; каждая команда git будет запускаться по суперпроекту и всем подчиненным репозиториям по очереди. Подобная деятельность может быть очень хорошо знакома CVS и (в меньшей степени) пользователям Subversion. Конструкция Gitslave для простоты для обычных операций git.

Я также укажу вам на etckeeper, который отслеживает разрешения. Он имеет свои особенности, которые могут или не могут использоваться для вас.

Наконец, я хочу отметить, что вы можете иметь custome post-checkout script, который устанавливает соответствующие разрешения для соответствующих файлов/каталогов.

Ответ 3

Я подозреваю, что вы намного лучше разрешаете своим разработчикам отправлять комментарии в обоих/обоих хранилищах. См. Также этот вопрос об ошибке сервера.