I recently had to upgrade my Mac from Yosemite to Sierra in order to be able to run TurboTax for 2017 taxes. I have a MacBook Pro with a 1Tb hard drive. I was only using 100Gb of that for Yosemite, so I used Disk Utility's Partition option to divide my disk into two Volumes. The original retained my existing Yosemite system, and the other half was virtually empty. I called that volume 'Sierra'. I backed-up my Yosemite system onto an external drive, and then Restarted from that drive by holding down the Option key so Restart would show me a choice of Volumes. I chose my backup, and then ran backup software, Carbon Copy Cloner, and chose my backup as the source, and 'Sierra' as the destination. The cloning process then gave me a copy of Yosemite on the Sierra volume. If you're wondering why I didn't simply clone from Yosemite directly to Sierra, I didn't want my hard-disk read-writing, causing the read-write head to constantly move back-and-forth. Using an external drive keeps both sides running smoothly.
OK, so now I was able to Restart again, but this time I could choose either my Macintosh (original system), or Sierra (cloned system) by holding down the Option key when you hear the disk head "buzz" (retract). At this point I took my computer to a local Apple Store where they were able to 'install' the Sierra system onto my Sierra volume. I now had an operational Sierra system with all my user stuff retained because I had seeded the Sierra volume with my Yosemite data. Of course, not everything worked in Sierra. I had to download XQuartz because X11 had been altered considerably on Sierra. Eventually, I got everything working on Sierra.
Now here's the interesting part. I still use Yosemite regularly, but I want any changes there to be reflected to the Sierra counterpart. To do that, I created an 'alias' on Yosemite in .bashrc that points to Sierra with a fully-qualified /path, like this: alias VS='/Volumes/Sierra' . I can now go to any directory of Yosemite and copy files to the corresponding directory on Sierra, like this: cp -p <source> $VS$PWD/. where <source> is any file or file* selection. Now since I didn't want to have to type all that stuff, I created three scripts that allowed me to: 1) copy a single file; 2) copy several files based upon 'modification-date' criteria; and 3) remove a single file.
#2 is a script that creates another executable script that uses #1 to copy each of the date-selected files (not volumes or symlinks). I've included these script as download selections at the bottom of this page. You'll want to change the Volume names to match your configuration. I wrote them so the same scripts can be on both sides, and whichever is the 'boot-disk' is the source, and the other Volume is the destination.destination. If you install these scripts on A, you can 'cpx cpx' to copy the cpx script to B. I put these scripts in my $HOME directory.