Если кто-либо еще интересуется извлечением размеров изображения TIFF без загрузки графического объекта, существует проверенный метод, который отлично работает для меня во всех средах. Я также нашел другое решение для этого, но оно вернуло неправильные значения из созданных Illustrator TIFF. Но есть фантастическая графическая библиотека, называемая GraphicEx Майком Лишке (очень талантливый разработчик TVirtualStringTree). Существуют реализации многих популярных форматов изображений, и все они происходят из базового класса TGraphicExGraphic, который реализует виртуальный метод ReadImageProperties. Он основан на потоках и только считывает файл-файл во всех реализациях. Итак, это молниеносно ...: -)
Итак, вот пример кода, который извлекает размеры TIFF (метод одинаковый для всех графических реализаций, PNG, PCD, TGA, GIF , PCX и т. Д.):
Uses ..., GraphicEx,...,...;
Procedure ReadTifSize (FN:String; Var iWidth,iHeight:Integer);
Var FS:TFileStream;
TIFF:TTIFFGraphic;
Begin
iWidth:=0;iHeight:=0;
TIFF:=TTIFFGraphic.Create;
FS:=TFileStream.Create(FN,OF_READ);
Try
TIFF.ReadImageProperties(FS,0);
iWidth:=TIFF.ImageProperties.Width;
iHeight:=TIFF.ImageProperties.Height;
Finally
TIFF.Destroy;
FS.Free;
End;
End;
Это все ... :-) И это то же самое для всех графических реализаций в блоке.
Простым языком, git pull
делает git fetch
сопровождаемый git merge
.
можно сделать git fetch
в любое время для обновления удаленно отслеживающих ответвлений под refs/remotes/<remote>/
.
Эта операция никогда не изменяет ни одного из Ваших собственных локальных ответвлений под refs/heads
и безопасна обойтись без изменения Вашей рабочей копии. Я даже услышал о людях, работающих git fetch
периодически в задании крона в фоновом режиме (хотя я не рекомендовал бы делать это).
А git pull
- то, что Вы сделали бы для обеспечения локального ответвления, актуального с его удаленной версией, также обновление другого удаленного отслеживания переходит.
документация Мерзавца †“ получение по запросу мерзавца :
В ее режиме по умолчанию,
git pull
стенография дляgit fetch
сопровождаемый [1 110].
git-pull - Fetch from and merge with another repository or a local branch SYNOPSIS git pull … DESCRIPTION Runs git-fetch with the given parameters, and calls git-merge to merge the retrieved head(s) into the current branch. With --rebase, calls git-rebase instead of git-merge. Note that you can use . (current directory) as the <repository> to pull from the local repository — this is useful when merging local branches into the current branch. Also note that options meant for git-pull itself and underlying git-merge must be given before the options meant for git-fetch.
Вы вытянули бы, если бы Вы хотите объединенные истории, Вы выбрали бы, если Вы просто 'хотите коды', поскольку некоторый человек отмечал некоторые статьи здесь.
Один из вариантов использования git fetch
заключается в том, что следующее будет сообщать вам о любых изменениях в удаленной ветке с момента вашего последнего извлечения ... так что вы можете проверить перед выполнением фактического извлечения, которое может изменить файлы в ваша текущая ветка и рабочая копия.
git fetch
git diff ...origin
См .: https://git-scm.com/docs/git-diff относительно синтаксиса с двумя и тремя точками в команде diff
Вкратце:
Выборка Мерзавца похожа на ВЫБОР SQL. Это только покажет Вам что-то, но не обновит или изменит что-либо.
Получение по запросу Мерзавца похоже на ВЫБОР SQL тогда после этого, обновите мою локальную копию.
Все ответвления хранятся в .git/refs
, Все локальные ответвления хранятся в .git/refs/heads
, Все удаленные ответвления хранятся в .git/refs/remotes
git fetch
фиксации загрузок команды, файлы и судьи из удаленного репозитория в Ваш локальный repo. Выборка - то, что Вы делаете, когда Вы хотите видеть то, что все другие продолжали работать.
Поэтому, когда Вы делаете git fetch
, все файлы, фиксации и судьи загружаются в этом .git/refs/remotes
, можно переключиться на эти ответвления для наблюдения изменений. Можно объединить их, если Вы хотите.
git pull
просто загрузки эти изменения и также объединяет их с текущим ответвлением.
Я просто хочу добавить маленькую дополнительную информацию. Получение по запросу мерзавца
git fetch
сопровождается
git merge --ff
, Эта опция, добавленная к слиянию, является причиной, почему это не создает фиксацию слияния.
Потрясающая Статья об этой теме: https://www.git-tower.com/learn/git/faq/difference-between-git-fetch-git-pull