После того как Вы знаете, что хеш притона фиксирует Вас отброшенный, можно применить его как притон:
git stash apply $stash_hash
Или, можно создать отдельное ответвление для него с
git branch recovered $stash_hash
После этого можно сделать то, что Вы хотите со всеми нормальными инструментами. Когда Вы сделаны, просто сдуваете ответвление.
Если Вы только что вытолкали его, и терминал все еще открыт, Вам все еще распечатают значение хэш-функции git stash pop
на экране (спасибо, Dolda).
Иначе можно найти его с помощью этого для Linux, Unix или Bash Мерзавца для Windows:
git fsck --no-reflog | awk '/dangling commit/ {print $3}'
... или использование Powershell для Windows:
git fsck --no-reflog | select-string 'dangling commit' | foreach { $bits = $_ -split ' '; echo $bits[2];}
Это покажет Вам все фиксации в подсказках Вашего графика фиксации, на которые больше не ссылаются ни от какого ответвления или тега – каждая потерянная фиксация, включая каждую фиксацию притона, которую Вы когда-либо создавали, будет где-нибудь в том графике.
Самый легкий способ найти фиксацию притона, которую Вы хотите, состоит в том, чтобы, вероятно, передать тот список gitk
:
gitk --all $( git fsck --no-reflog | awk '/dangling commit/ {print $3}' )
... или см. ответ от emragins при использовании Powershell для Windows.
Это запустит браузер репозитория, показывающий Вам каждая фиксация в репозитории когда-либо, независимо от того, достижимо ли это или нет.
Можно заменить gitk
там с чем-то как git log --graph --oneline --decorate
если Вы предпочитаете хороший график на консоли по отдельному приложению для GUI.
Для определения фиксаций притона ищите сообщения о фиксации этой формы:
WIP на somebranch: commithash Некоторое старое сообщение о фиксации
Примечание: Сообщение о фиксации только будет в этой форме (запускающийся с "WIP на"), если Вы не предоставляли сообщение, когда Вы сделали git stash
.
Есть такой синтаксис, хотя я, честно говоря, не знаю, поддерживается ли он во всех браузерах (он должен быть):
@media print {
body {
background: #fff;
color: #000;
}
/* etc */
}
См. Мультимедийную часть стандарта CSS2 на W3 .
Если вы хотите, чтобы стили были одинаковыми для всех носителей, просто определите общие стили в таблице стилей как обычно (т. Е. Не в каком-либо правиле для носителей), а затем поместите элементы, относящиеся к носителю, в соответствующие правила.
Если вы хотите, чтобы некоторые стили применялись к подмножеству носителей, вы можете сделать это следующим образом:
@media print {
body { font-size: 10pt }
}
@media screen {
body { font-size: 13px }
}
@media screen, print {
body { line-height: 1.2 }
}
Вот ссылка на соответствующую страницу W3C