Say you have two computers with different hardware (two laptops or a laptop and a desktop) that you want to use alternatively. For example, I am using the comfortable desktop now, and want to mirror all documents and settings to a laptop to travel, and then push changes back to the desktop when back at home. Both have same OS (Ubuntu 14.04LTS 64bits), same installed packages and (for the sake of simplicity) a single user (same name, same password).
Here is how you can sync (I will use rsync over SSH on a direct Ethernet cable between two laptops) and here is what you should sync to mirror folders and settings. Also, here you can find a great list of files and folders that may be left out for efficiency when the goal is a backup (though some may be useful in this case, like histories, recent files or some caches) and, again, here is a nice and practical way to do it in rsync.
I know that most hardware-specific configuration files should be out of user folders by design. Still, there are any files/folders within /home
that must be left out of this sync to avoid configuration problems between different hardwares?
If you want to keep both systems totally idential and have the same software and the same settings I would stay away from at ...
and copy all of the other files. But I would not try to keep desktop and notebook identical when looking at software and software settings. It is a waste of time. Synching only the normal files in /home/$USER/ (Documents, Downloads, Pictures etc) and none of the hidden files should be enough.
I would advice to also use the same user ID (they probably will be the same if there is a single user on each system).
Mind though that this should not be considered a backup method and I would suggest to plan a backuo for each system.