Для завершения собственного ответа синтаксис действительно
git show object
git show $REV:$FILE
git show somebranch:from/the/root/myfile.txt
git show HEAD^^^:test/test.py
, команда берет обычный стиль пересмотра, означая, что можно использовать любое следующее:
HEAD
+ x количество ^
символы Подсказка важно помнить, что при использовании" git show
", всегда определяют путь от корня репозитория , не положение текущего каталога.
(Хотя Mike Morearty упоминает, что, по крайней мере, с мерзавцем 1.7.5.4, можно определить относительный путь путем помещения" ./
" в начале пути - например:
git show HEAD^^:./test.py
)
Прежде git1.5.x, который был сделан с некоторой инфраструктурой:
git ls-tree
показывают список одного или нескольких объектов 'блоба' в фиксации
git cat-file blob
кошка файл, как это фиксировалось в определенном пересмотре (подобный svn кошке). используйте ls-дерево мерзавца для получения значения данного файла-sha1
git cat-file -p $(git-ls-tree $REV $file | cut -d " " -f 3 | cut -f 1)::
git-ls-tree, перечисляет идентификатор объекта за $file в $REV пересмотра, это сокращается из вывода и используется в качестве аргумента файлу кошки мерзавца, который нужно действительно назвать объектом кошки мерзавца и просто выводит тот объект к stdout.
Примечание: начиная с Мерзавца 2.11 (4 квартал 2016), можно применить фильтр контента к эти git cat-file
вывод!
См. фиксация 3214594 , фиксация 7bcf341 (09 сентября 2016), фиксация 7bcf341 (09 сентября 2016), и b9e62f6 фиксации, фиксация 16dcc29 (24 августа 2016) [1 136] Johannes Schindelin (dscho
) .
(Объединенный [1 137] Junio C Hamano - gitster
- в [1 138] фиксация 7889ed2 , 21 сентября 2016) глоток>
cat-file
: поддержка--textconv
/--filters
в пакетном режимеДаже при том, что"
git hash-objects
", который является инструментом, чтобы взять поток данных на файловой системе и поместить его в объектно-ориентированную память Мерзавца, позволила выполнять "outside-world-to-Git" преобразования (например, преобразования конца строки и применение чистого фильтра), и это имело функцию на по умолчанию от еще начального этапа, ее обратная операция"git cat-file
", который берет объект от объектно-ориентированной памяти Мерзавца, и воплотите для потребления внешним миром, испытал недостаток в эквивалентном механизме для выполнения Примечания "Git-to-outside-world"
git config diff.txt.textconv "tr A-Za-z N-ZA-Mn-za-m <"
git cat-file --textconv --batch
: "git cat-file --textconv
" недавно запустил segfaulting (2017), который был исправлен в Мерзавце 2.15 (4 квартал 2017)
, См. cc0ea7c фиксации (21 сентября 2017) [1 142] Jeff King (peff
) .
(Объединенный [1 143] Junio C Hamano - gitster
- в [1 144] bfbc2fc фиксации, 28 сентября 2017) глоток>
Примечание, что к [1 178] переопределение/замена файл с прошлым содержанием, Вы не должны использовать путание git checkout
команда больше, но git restore
(Мерзавец 2.23 +, август 2019)
git restore -s -- afile
, Который восстановил бы на рабочем дереве только файл как существующий в "источнике" (-s
) фиксация SHA1.
Для восстановления также индекса:
git restore -s -SW -- afile
(-SW
: короткий для [1 127])
Вы можете использовать Adobe PDF IFilter Library для преобразования PDF-документа в текст.
Также см. Пример в CodeProject
iTextSharp - еще одна альтернативная библиотека PDF для .NET.
Поскольку PDF - это двоичный формат, вам придется использовать pdf-библиотеку, например pdflib, для чтения файлов pdf.
Вы должны проверить библиотеку PDFSharp , и у них есть компонент предварительного просмотра, где еще извлечение текста и отображение его в RichTextBox могло бы потребовать дополнительной работы, но вы можете попробовать это.