GIT: извлечение в «действительно» определенную папку - PullRequest
0 голосов
/ 22 декабря 2010

Я хочу экспортировать, извлекать или как вы это называете из индекса, HEAD или любого другого коммита, в определенную папку, как это возможно?Подобные вопросы уже задавались:

GIT: извлечение в определенную папку

Выполнить "экспорт git" (например, "svn export")?

Но проблема с предлагаемым решением состоит в том, что они сохраняют относительный путь.Так, например, если я использую упомянутый метод для извлечения файла nbapp / editblog.php в папку temp, файл будет извлечен в temp / nbapp / editblog.php!

Есть ли в любом случаеизвлекать «temp» напрямую?

Кроме того, еще одна важная вещь - это возможность проверить HEAD или любой другой коммит.Индекс checkout (который позволяет использовать опцию --prefix для извлечения в определенную папку, в то время как обычная проверка не позволяет) проверяет только индекс.Что делать, если я хочу извлечь файл из определенного коммита в определенную папку?Похожий вопрос уже есть

Ответы [ 2 ]

1 голос
/ 22 декабря 2010

С git archive вы можете включить элементы пути, которые вы не хотите копировать, в спецификацию дерева.Например,

git archive --prefix=temp/ HEAD:nbapp editblog.php | tar x

создает temp/editblog.php, тогда как

git archive --prefix=temp/ HEAD nbapp/editblog.php | tar x

создает temp/nbapp/editblog.php.

1 голос
/ 22 декабря 2010

git cat-file blob revision:path > path/where/to/save/file

...