Publicado em: 19/May/2020
Atualizado em: 19/May/2020
git

Git - diff de imagens

Dizer ao git que imagem é imagem

Primeiro é necessário informar ao git para tratar imagens de um modo especial. Isso pode ser feito globalmente ou por projeto.

O comando abaixo diz ao git que algumas extensões são imagens.

1git config --global core.attributesfile '~/.gitattributes'
1cat ~/.gitattributes
2*.gif diff=image
3*.jpg diff=image
4*.png diff=image

Dizer ao git como fazer o diff

O comando abaixo diz ao git qual programa executar para fazer o diff da imagem.

1git config --global diff.image.command '~/bin/git-imgdiff'

O programa de diff

 1cat << 'EOF' > ~/bin/git-imgdiff
 2#!/bin/sh
 3# Descomente o modo que desejar
 4
 5# 3 imagens lado a lado: NOVA | DIFF | ANTIGA
 6compare "$2" "$1" png:- | montage -geometry +4+4 "$2" - "$1" png:- | display -title "$1" -
 7
 8# 1 imagem: DIFF
 9# compare "$2" "$1" png:- | display -title "$1" -
10EOF
11chmod 755 ~/bin/git-imgdiff

Referências

comments powered by Disqus