Не удалось найти ответы на это с Google. При импорте той же папки изображений дважды, Shotwell пропустит дублирующиеся фотографии. Но как это обнаруживает дубликаты? Если я импортирую две различных папки изображений, некоторые из которых имеют то же имя по некоторым причинам, то Shotwell предположит, что они - дубликаты? Или это также включает в размер файла, делание лжи копирует вряд ли? Или это хеширует изображения, делание лжи копирует почти невозможный?
Я полагаю, что это более совершенствуется, чем простые имена, я просто попробовал. На самом деле казалось бы, что это не основывает его на имени вообще.
, Таким образом, я просто создал следующее:
TestDir
│
├─ blue.png #Blue A4 page
├─ blue2.png #Blue A4 page
├─ green.png #Blue A4 page
├─ red.png #Yellow A4 page
├─ yellow.png #Yellow A4 page
├─ yellow2.png #Yellow A4 page
└ TestDir2
│
├─ yellow.png #Blue A4 page
└─ yellow.png #Blue A4 page
Импортированный папка TestDir (который импортирует из любых подкаталогов также). Это было уведомлением:
6 duplicate photos were not imported:
/home/tim/Pictures/Test/red.png
/home/tim/Pictures/Test/yellow2.png
/home/tim/Pictures/Test/green.png
/home/tim/Pictures/Test/blue2.png
(and 2 more)
2 photos successfully imported.
два, которые это импортировало, были blue.png и yellow.png. Это вызвано тем, что они были созданы сначала (это выбирает самое старое, если существуют дубликаты).
Это было подтверждено следующим тестом:
TestDir
│
├─ blue.png #Blue A4 page
├─ blue2.png #Blue A4 page
├─ green.png #Blue A4 page (sorry OCD people)
├─ red.png #Yellow A4 page (sorry OCD people)
├─ yellow.png #Yellow A4 page
├─ yellow2.png #Yellow A4 page
├─ pink2.png #Pink A4 page
├─ pink.png #Pink A4 page
└ TestDir2
│
├─ yellow.png #Blue A4 page
└─ yellow.png #Blue A4 page
pink2.png
и pink.png
были созданы. pink2.png
был создан сначала, тогда pink.png
8 duplicate photos were not imported:
/home/tim/Pictures/Test/red.png
/home/tim/Pictures/Test/yellow2.png
/home/tim/Pictures/Test/green.png
/home/tim/Pictures/Test/blue2.png
(and 4 more)
3 photos successfully imported.
, успешные импортированные были blue.png
, yellow.png
и pink2.png
.
Из-за этого я предполагаю, что это использует алгоритм хеширования.
достаточно правильно, что изменение всего 1 пикселя цвета от зеленого до желтого на странице A4 заставило его не обнаруживать как дубликат. Довольно точный тогда!
На самом деле, я просто нашел это сообщение здесь :
, Как только эта ошибка исправлена, Shotwell будет использовать (исключительно) полный хеш MD5 файла для выполнения дублирующейся проверки, которая является симпатичным проклятым точным способом найти дубликаты.
На самом деле в исходный код , в строке 732 является этим: <глоток> Престижность Жереми Miserez глоток>
imported_full_md5_table.has_key(prepared_file.full_md5)) {
Кажется, что это использует хеш MD5!