From: Dirk Süsserott Date: Sat, 21 Nov 2009 16:40:14 GMT Subject: How to make git diff-* ignore some patterns? Message-ID: <4B0817EE.1040000@dirk.my1.cc> Hi list, is there a way to tell "git diff-index" to ignore some special patterns, such that /^-- Dump completed on .*$/ is NOT recognized as a difference and "git diff-index" returns 0 if that's the only difference? -- Dirk I have a mySQL database which I backup daily using mysqldump (cronjob). The result is a text file (*.sql) with all the "create" and "insert" statements and some metadata. I used to use tar and gzip to backup these files and got a huge collection of backups in the last tree years (500+ MB). Then I switched to Git and recorded only the diffs between day X and day X-1. My repository shrunk to 16 MB for the very same data, which was great! My database doesn't change every day, but I backup it anway and store the backup files with Git and a cronjob. It does: --------------- mysqldump ... -r # that's the output file ;-) git add if ! git diff-index --quiet HEAD --; then git commit -m "Backup of at " fi --------------- This way, a new commit is only done when the backupfile has changed. So far, so perfect. A few days ago my web hoster (where the database actually resides) changed the mySQL version. mysqldump now writes "-- Dump completed on " to the file and Git correctly recognizes this as a change and my script creates a new commit. Every day, even if only that line has changed. I'd like to skip these commits if only the "Dump completed" line has changed.