Копирование только файлов из тега git - PullRequest
1 голос
/ 22 марта 2011

У меня есть некоторый php-код в репозитории git. Я использую этот код в нескольких vhosts на одном веб-сервере, но разные vhosts могут использовать разные версии кода.

Как создать копии файлов из определенного тега в различных каталогах vhost httpdocs, но без необходимости реплицировать каталог .git для каждого из них?

Я понимаю, что мог бы использовать тег проверки git clone / git для каждого vhost и просто удалить каталог .git, или использовать архив git, а затем распаковать файлы, но я предполагаю / надеюсь, что есть «правильный» способ git сделайте это ... что-то вроде git-архива, но куда файлы копируются прямо в нужное место.

1 Ответ

1 голос
/ 22 марта 2011

git archive (как вы упомянули) - это правильная команда для извлечения подкаталога для данного тега.

git archive [-o | --output=<file>] <tree-ish> [<path>…]
  • <tree-ish> будет вашим тегом
  • путь будет правильным подмножеством файлов, которые вам нужны.

Но это означает, что вы можете обработать этот архив и распаковать его в нужное место, что, как указывает Бомба в комментариях, можно сделать с помощью:

git archive --format=tar … | tar -C /path/to/target -xf - 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...