Synchronization Optimization

This pull request fixes an issue which caused an unnecessarily high amount of network messages to be sent when pushing or pulling many merge commits.  Now, commits will only be processed once.