Сделать `git stash show`, напечатать полный путь к файлу - PullRequest
0 голосов
/ 01 июня 2018

Я пытаюсь восстановить отдельные файлы из тайника, поэтому мне нужен полный путь к файлам.Но если я выполню git stash show, то часто отображается только короткий путь.

например,

$ git stash show
 .idea/deployment.xml                               |   4 +-
 .idea/test.iml                                     |   4 +-
 .idea/workspace.xml                                | 635 +++++++++++++++------
 .../local/Black/NewsletterPopup/Block/Show.php    |  13 +
 .../local/Black/NewsletterPopup/etc/config.xml    |  15 +
 .../frontend/venedor/default/layout/popup.xml      |   9 +
 .../default/template/black/popup/index.phtml      |   1 +
 app/etc/modules/Black_NewsletterPopup.xml         |   9 +
 8 files changed, 505 insertions(+), 185 deletions(-)

Есть ли способ показать полный путь?

Если явыполнить git checkout stash@{0} -- .../local/Black/NewsletterPopup/Block/Show.php

Тогда я получу error: pathspec '.../local/Black/NewsletterPopup/Block/Show.php' did not match any file(s) known to git.

Я уже был CTRL + F Документация для path но ничего релевантного не найдено.

Ответы [ 2 ]

0 голосов
/ 01 июня 2018

Это не прямой ответ на ваш вопрос, но вы можете просто git stash apply и затем сбросить файлы, которые вы не хотите, чтобы на них повлиял тайник.Примерно так:

git stash apply

, затем

git checkout -- file1.ext

и т. Д. Для каждого файла, на который вы не не хотите повлиять на тайник.

Кажется, что ответ @Mark работает.Но допустим, у вас есть тайник с 15 файлами, и вы хотели внести изменения в 14 из этих 15 файлов.Тогда может оказаться более целесообразным просто применить полный тайник и выполнить откат одного файла, чем применять 14 файлов вручную.

0 голосов
/ 01 июня 2018

Вы можете присвоить опции формата git diff для git stash show, поэтому

git stash show --name-only

будет одним из способов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...