Git. Вытянуть из репозитория конкретный файл

Здравствуйте. Как вытянуть из git репозитория конкретный файл или каталог, не клонируя весь репозиторий?

Например, ситуация такая:
есть локальный репозиторий. В нём поправили руками и не закоммитили\удалили\иным образом испортили файл. При попытке сделать git pull возникает конфликт. Всё? Жизнь кончена? Нужно заново клонировать репозиторий?

Видел вот это. Но это не работает.

В локальном репозитории удалил файл index.html. Пробую восстановить:

user@host:~/repos/projectname$ git show HEAD -- index.html
commit 7799d08a68166795f1fa33f4faf3435469439cd7
Author: Name Soname <user@host.ru>
Date: Wed May 18 18:56:43 2011 +0400

test

diff --git a/index.html b/index.html
new file mode 100644
index 0000000..9daeafb
--- /dev/null
+++ b/index.html
@@ -0,0 +1 @@
+test


«test» — это коментарий к коммиту, которым файл index.html был запушен в репозиторий.

Пробовал с двоеточием:

user@host:~/repos/projectname$ git show HEAD:index.html
test
  • Вопрос задан
  • 11453 просмотра
Решения вопроса 1
shushu
@shushu
вы имеете ввиду git checkout path/to/file?

Есть локальный репозитарий, удалил файлик index.html
затем
git checkout index.html
файлик восстановился
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Progrik
есть локальный репозиторий. В нём поправили руками и не закоммитили\удалили\иным образом испортили файл. При попытке сделать git pull возникает конфликт. Всё? Жизнь кончена? Нужно заново клонировать репозиторий?

Возможно, вам поможет аргумент -f при запуске команды.
Например,
git pull -f
или
git push -f
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы