Integrating Git with ClearCase or SVN isn't something I am looking for at the moment, mainly because a Git repo cannot keep the same kind of data (binaries) or volume (number/size of files) than traditional centralized repos.
See "What are the Git limits?".
I am trying to introduce Git right now in a corporate ClearCase-SVN environment, as a stand-alone alternative.
While the speed, private commits and merge features are very much appreciated, I am asked to solve real issues in term of:
- centralization: central repositories are still mandatories, to act as reference for many teams to synchronize their code to
- modularization: there is no way to create just one Vob (ClearCase) or one Subversion repo and start putting everything in it: each git repo needs to be much fine-grained in order to add a coherent value when tagging or branching (those operations concern the all Git repo, not a subdirectory within said repo).
- authentication: each user is referenced in a LDAP and I need to come up with
prereceive
hooks in order to have at least one commit made with the right user.name
config (i.e. a user.name
equals to the common name cn
in the LDAP of our company). (a bit like the gitolite script 'contrib/update.email-check', but for user.name
, not for email).
- right access: gitolite is a huge help here to get very precise ACL for those central repos.
But using ssh private/public keys also means having private keys with pass-phrase (mandatory according to our security team), and that isn't trivial to integrate with Hudson or other tools.
In short, I still find Git better, but since I am in charge of implementing its installation/administration, I fully agree with my previous analysis made in the SO question "Can we finally move to DVCS in Corporate Software? Is SVN still a 'must have' for development?" ;).