49 lines
		
	
	
	
		
			1.8 KiB
			
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
	
		
			1.8 KiB
			
		
	
	
	
		
			Markdown
		
	
	
	
	
	
git-annex's [[metadata]] works best when files have a lot of useful
 | 
						|
metadata attached to them.
 | 
						|
 | 
						|
To make git-annex automatically set the year and month when adding files,
 | 
						|
run: `git config annex.genmetadata true`
 | 
						|
 | 
						|
## git commit hook
 | 
						|
 | 
						|
A git commit hook can be set up to extract lots of metadata from files
 | 
						|
like photos, mp3s, etc. Whenever annexed files are committed, their
 | 
						|
metadata will be extracted and stored.
 | 
						|
 | 
						|
Download [[pre-commit-annex]] and install it in your git-annex repository
 | 
						|
as `.git/hooks/pre-commit-annex`  
 | 
						|
Remember to make the script executable! `chmod +x .git/hooks/pre-commit-annex`
 | 
						|
 | 
						|
### using extract
 | 
						|
 | 
						|
The git commit hook can use extract to get metadata.
 | 
						|
 | 
						|
Install it from <http://www.gnu.org/software/libextractor/>  
 | 
						|
`apt-get install extract`
 | 
						|
 | 
						|
Configure which metadata fields to ask extract for: `git config metadata.extract "artist album title camera_make video_dimensions"`
 | 
						|
 | 
						|
To get a list of all possible fields, run: `extract -L | sed 's/ /_/g'`
 | 
						|
 | 
						|
### using exiftool
 | 
						|
 | 
						|
The git commit hook can also use exiftool to get metadata.
 | 
						|
 | 
						|
Install it from <http://owl.phy.queensu.ca/~phil/exiftool/>  
 | 
						|
`apt-get install libimage-exiftool-perl`
 | 
						|
 | 
						|
Configure which metadata fields to ask exiftool for: `git config metadata.exiftool "Model ImageSize FocusRange GPSAltitude GPSCoordinates"`
 | 
						|
 | 
						|
To get a list of all possible fields, run: `exiftool -list`
 | 
						|
 | 
						|
### using both extract and exiftool
 | 
						|
 | 
						|
If you want some metadata that extract knows about, and other metadata
 | 
						|
that exiftool knows about, just install them both, and set both
 | 
						|
`metadata.extract` and `metadata.exiftool`.
 | 
						|
 | 
						|
### overwriting existing metadata
 | 
						|
 | 
						|
By default, if a git-annex already has a metadata field for a file,
 | 
						|
its value will not be overwritten with metadata taken from files.
 | 
						|
To allow overwriting, run: `git config metadata.overwrite true`
 |