jQueryのgitリポジトリで実験
$ mkdir ../backup_test
$ git checkout 1.8.0
$ rsync -v -a --exclude=node_modules --exclude=.git . ../backup_test/current
$ find ../backup_test/current/|sort > ../a
$ git checkout 1.8.1
# -bのみ … 同じ場所に~がついてバックアップされる
$ rsync -b -a --exclude=node_modules --exclude=.git . ../backup_test/current
$ find ../backup_test/current/|sort > ../b
$ diff -u ../[ab]
--- ../a 2015-07-30 10:37:16.781803300 +0900
+++ ../b 2015-07-30 10:37:46.512468600 +0900
@@ -5,22 +5,30 @@
../backup_test/current/.gitmodules
../backup_test/current/.jshintrc
../backup_test/current/AUTHORS.txt
+../backup_test/current/AUTHORS.txt~
../backup_test/current/build
../backup_test/current/build/release.js
+../backup_test/current/build/release.js~
../backup_test/current/build/release-notes.js
+../backup_test/current/build/release-notes.js~
../backup_test/current/build/release-notes.txt
../backup_test/current/component.json
+../backup_test/current/component.json~
../backup_test/current/dist
../backup_test/current/dist/jquery.js
../backup_test/current/dist/jquery.min.js
../backup_test/current/dist/jquery.min.map
../backup_test/current/grunt.js
+../backup_test/current/grunt.js~
../backup_test/current/jquery.js
+../backup_test/current/jquery.js~
../backup_test/current/Makefile
../backup_test/current/MIT-LICENSE.txt
../backup_test/current/npm-debug.log
../backup_test/current/package.json
+../backup_test/current/package.json~
../backup_test/current/README.md
+../backup_test/current/README.md~
../backup_test/current/speed
../backup_test/current/speed/benchmark.js
../backup_test/current/speed/benchmarker.css
@@ -37,29 +45,41 @@
../backup_test/current/src/.jshintrc
../backup_test/current/src/ajax
../backup_test/current/src/ajax.js
+../backup_test/current/src/ajax.js~
../backup_test/current/src/ajax/jsonp.js
../backup_test/current/src/ajax/script.js
../backup_test/current/src/ajax/xhr.js
../backup_test/current/src/attributes.js
../backup_test/current/src/callbacks.js
+../backup_test/current/src/callbacks.js~
../backup_test/current/src/core.js
+../backup_test/current/src/core.js~
../backup_test/current/src/css.js
+../backup_test/current/src/css.js~
../backup_test/current/src/data.js
+../backup_test/current/src/data.js~
../backup_test/current/src/deferred.js
../backup_test/current/src/deprecated.js
+../backup_test/current/src/deprecated.js~
../backup_test/current/src/dimensions.js
+../backup_test/current/src/dimensions.js~
../backup_test/current/src/effects.js
+../backup_test/current/src/effects.js~
../backup_test/current/src/event.js
+../backup_test/current/src/event.js~
../backup_test/current/src/exports.js
../backup_test/current/src/intro.js
../backup_test/current/src/manipulation.js
+../backup_test/current/src/manipulation.js~
../backup_test/current/src/offset.js
../backup_test/current/src/outro.js
../backup_test/current/src/queue.js
+../backup_test/current/src/queue.js~
../backup_test/current/src/serialize.js
../backup_test/current/src/sizzle
../backup_test/current/src/sizzle-jquery.js
../backup_test/current/src/support.js
+../backup_test/current/src/support.js~
../backup_test/current/src/traversing.js
../backup_test/current/test
../backup_test/current/test/.jshintrc
@@ -92,6 +112,8 @@
../backup_test/current/test/data/json.php
../backup_test/current/test/data/json_obj.js
../backup_test/current/test/data/jsonp.php
+../backup_test/current/test/data/manipulation
+../backup_test/current/test/data/manipulation/iframe-denied.html
../backup_test/current/test/data/name.html
../backup_test/current/test/data/name.php
../backup_test/current/test/data/offset
@@ -119,7 +141,9 @@
../backup_test/current/test/data/test2.html
../backup_test/current/test/data/test3.html
../backup_test/current/test/data/testinit.js
+../backup_test/current/test/data/testinit.js~
../backup_test/current/test/data/testrunner.js
+../backup_test/current/test/data/testrunner.js~
../backup_test/current/test/data/testsuite.css
../backup_test/current/test/data/text.php
../backup_test/current/test/data/ua.txt
@@ -135,22 +159,33 @@
../backup_test/current/test/readywait.html
../backup_test/current/test/unit
../backup_test/current/test/unit/ajax.js
+../backup_test/current/test/unit/ajax.js~
../backup_test/current/test/unit/attributes.js
../backup_test/current/test/unit/callbacks.js
+../backup_test/current/test/unit/callbacks.js~
../backup_test/current/test/unit/core.js
+../backup_test/current/test/unit/core.js~
../backup_test/current/test/unit/css.js
+../backup_test/current/test/unit/css.js~
../backup_test/current/test/unit/data.js
+../backup_test/current/test/unit/data.js~
../backup_test/current/test/unit/deferred.js
../backup_test/current/test/unit/deprecated.js
../backup_test/current/test/unit/dimensions.js
+../backup_test/current/test/unit/dimensions.js~
../backup_test/current/test/unit/effects.js
+../backup_test/current/test/unit/effects.js~
../backup_test/current/test/unit/event.js
+../backup_test/current/test/unit/event.js~
../backup_test/current/test/unit/exports.js
../backup_test/current/test/unit/manipulation.js
+../backup_test/current/test/unit/manipulation.js~
../backup_test/current/test/unit/offset.js
../backup_test/current/test/unit/queue.js
+../backup_test/current/test/unit/queue.js~
../backup_test/current/test/unit/selector.js
../backup_test/current/test/unit/serialize.js
../backup_test/current/test/unit/support.js
+../backup_test/current/test/unit/support.js~
../backup_test/current/test/unit/traversing.js
../backup_test/current/test/xhtml.php
$ git checkout 1.8.2
# --suffixで、~でない任意の文字列をバックアップファイルの末尾に付けられる
$ rsync -b --suffix="-20150730" -a --exclude=node_modules --exclude=.git . ../backup_test/current
$ find ../backup_test/current/|sort > ../c
$ diff -u ../[bc]
--- ../b 2015-07-30 10:37:46.512468600 +0900
+++ ../c 2015-07-30 10:39:41.247848500 +0900
@@ -1,34 +1,44 @@
../backup_test/current/
../backup_test/current/.editorconfig
+../backup_test/current/.editorconfig-20150730
../backup_test/current/.gitattributes
../backup_test/current/.gitignore
../backup_test/current/.gitmodules
../backup_test/current/.jshintrc
../backup_test/current/AUTHORS.txt
../backup_test/current/AUTHORS.txt~
+../backup_test/current/AUTHORS.txt-20150730
../backup_test/current/build
../backup_test/current/build/release.js
../backup_test/current/build/release.js~
+../backup_test/current/build/release.js-20150730
../backup_test/current/build/release-notes.js
../backup_test/current/build/release-notes.js~
+../backup_test/current/build/release-notes.js-20150730
../backup_test/current/build/release-notes.txt
../backup_test/current/component.json
../backup_test/current/component.json~
+../backup_test/current/component.json-20150730
+../backup_test/current/CONTRIBUTING.md
../backup_test/current/dist
../backup_test/current/dist/jquery.js
../backup_test/current/dist/jquery.min.js
../backup_test/current/dist/jquery.min.map
../backup_test/current/grunt.js
../backup_test/current/grunt.js~
+../backup_test/current/grunt.js-20150730
../backup_test/current/jquery.js
../backup_test/current/jquery.js~
+../backup_test/current/jquery.js-20150730
../backup_test/current/Makefile
../backup_test/current/MIT-LICENSE.txt
../backup_test/current/npm-debug.log
../backup_test/current/package.json
../backup_test/current/package.json~
+../backup_test/current/package.json-20150730
../backup_test/current/README.md
../backup_test/current/README.md~
+../backup_test/current/README.md-20150730
../backup_test/current/speed
../backup_test/current/speed/benchmark.js
../backup_test/current/speed/benchmarker.css
@@ -46,32 +56,40 @@
../backup_test/current/src/ajax
../backup_test/current/src/ajax.js
../backup_test/current/src/ajax.js~
+../backup_test/current/src/ajax.js-20150730
../backup_test/current/src/ajax/jsonp.js
../backup_test/current/src/ajax/script.js
../backup_test/current/src/ajax/xhr.js
../backup_test/current/src/attributes.js
+../backup_test/current/src/attributes.js-20150730
../backup_test/current/src/callbacks.js
../backup_test/current/src/callbacks.js~
../backup_test/current/src/core.js
../backup_test/current/src/core.js~
+../backup_test/current/src/core.js-20150730
../backup_test/current/src/css.js
../backup_test/current/src/css.js~
../backup_test/current/src/data.js
../backup_test/current/src/data.js~
+../backup_test/current/src/data.js-20150730
../backup_test/current/src/deferred.js
+../backup_test/current/src/deferred.js-20150730
../backup_test/current/src/deprecated.js
../backup_test/current/src/deprecated.js~
../backup_test/current/src/dimensions.js
../backup_test/current/src/dimensions.js~
../backup_test/current/src/effects.js
../backup_test/current/src/effects.js~
+../backup_test/current/src/effects.js-20150730
../backup_test/current/src/event.js
../backup_test/current/src/event.js~
+../backup_test/current/src/event.js-20150730
../backup_test/current/src/exports.js
../backup_test/current/src/intro.js
../backup_test/current/src/manipulation.js
../backup_test/current/src/manipulation.js~
../backup_test/current/src/offset.js
+../backup_test/current/src/offset.js-20150730
../backup_test/current/src/outro.js
../backup_test/current/src/queue.js
../backup_test/current/src/queue.js~
@@ -80,6 +98,7 @@
../backup_test/current/src/sizzle-jquery.js
../backup_test/current/src/support.js
../backup_test/current/src/support.js~
+../backup_test/current/src/support.js-20150730
../backup_test/current/src/traversing.js
../backup_test/current/test
../backup_test/current/test/.jshintrc
@@ -152,14 +171,17 @@
../backup_test/current/test/delegatetest.html
../backup_test/current/test/hovertest.html
../backup_test/current/test/index.html
+../backup_test/current/test/index.html-20150730
../backup_test/current/test/localfile.html
../backup_test/current/test/networkerror.html
../backup_test/current/test/polluted.php
+../backup_test/current/test/polluted.php-20150730
../backup_test/current/test/qunit
../backup_test/current/test/readywait.html
../backup_test/current/test/unit
../backup_test/current/test/unit/ajax.js
../backup_test/current/test/unit/ajax.js~
+../backup_test/current/test/unit/ajax.js-20150730
../backup_test/current/test/unit/attributes.js
../backup_test/current/test/unit/callbacks.js
../backup_test/current/test/unit/callbacks.js~
@@ -170,6 +192,7 @@
../backup_test/current/test/unit/data.js
../backup_test/current/test/unit/data.js~
../backup_test/current/test/unit/deferred.js
+../backup_test/current/test/unit/deferred.js-20150730
../backup_test/current/test/unit/deprecated.js
../backup_test/current/test/unit/dimensions.js
../backup_test/current/test/unit/dimensions.js~
@@ -181,9 +204,11 @@
../backup_test/current/test/unit/manipulation.js
../backup_test/current/test/unit/manipulation.js~
../backup_test/current/test/unit/offset.js
+../backup_test/current/test/unit/offset.js-20150730
../backup_test/current/test/unit/queue.js
../backup_test/current/test/unit/queue.js~
../backup_test/current/test/unit/selector.js
+../backup_test/current/test/unit/selector.js-20150730
../backup_test/current/test/unit/serialize.js
../backup_test/current/test/unit/support.js
../backup_test/current/test/unit/support.js~
$ git checkout 1.8.3
# --backup-dirで、上書きされたファイルだけを別のディレクトリにコピーできる
# 指定はバックアップ先からの相対パス(or絶対パス)
$ rsync -b --backup-dir=../backup-20150730 -a --exclude=node_modules --exclude=.git . ../backup_test/current
$ find ../backup_test/backup-20150730/
../backup_test/backup-20150730/
../backup_test/backup-20150730/AUTHORS.txt
../backup_test/backup-20150730/build
../backup_test/backup-20150730/build/release-notes.js
../backup_test/backup-20150730/build/release.js
../backup_test/backup-20150730/component.json
../backup_test/backup-20150730/CONTRIBUTING.md
../backup_test/backup-20150730/grunt.js
../backup_test/backup-20150730/jquery.js
../backup_test/backup-20150730/package.json
../backup_test/backup-20150730/src
../backup_test/backup-20150730/src/ajax
../backup_test/backup-20150730/src/ajax/xhr.js
../backup_test/backup-20150730/src/ajax.js
../backup_test/backup-20150730/src/attributes.js
../backup_test/backup-20150730/src/callbacks.js
../backup_test/backup-20150730/src/css.js
../backup_test/backup-20150730/src/effects.js
../backup_test/backup-20150730/src/event.js
../backup_test/backup-20150730/src/support.js
../backup_test/backup-20150730/test
../backup_test/backup-20150730/test/data
../backup_test/backup-20150730/test/data/testinit.js
../backup_test/backup-20150730/test/data/testrunner.js
../backup_test/backup-20150730/test/unit
../backup_test/backup-20150730/test/unit/ajax.js
../backup_test/backup-20150730/test/unit/attributes.js
../backup_test/backup-20150730/test/unit/callbacks.js
../backup_test/backup-20150730/test/unit/core.js
../backup_test/backup-20150730/test/unit/css.js
../backup_test/backup-20150730/test/unit/effects.js