We are looking for a possible tools/approach/software to have a version control of services on ArcGIS Server 10.3.1 or 10.5.1.
I don't use Server, but I assume you have trolled Inside an ArcGIS Server Site
At which point I will step aside and let others more in tune step in.
We don't use Site.
Can you please elaborate on what you would like to do? What do you mean by "version control" of services exactly? Are you referring to the software release 'version', or are you referring to a geodatabase 'version' that a map document is connected to when you publish a resource?
We need the second one you describe.
The main functionality - store map documents, compare map services - show diff, roll back to previous version of the map service (previous map document).
I am not aware of any software with functionality that allows you to compare different 'version' map services, note their differences and enables roll back to a previous 'version'.
At a conceptual level, the deployment workflow would be: an organization publishes web services to a staging or dev environment. They perform testing and assessment of the web service, verify it meets and supports the business workflow, and when they are ready, they would move the web service to a production/publication server.
Hope this helps,
It could be an idea on the ESRI Ideas.
Similar to this one https://community.esri.com/ideas/10170
Retrieving data ...