The IguanaMainRepo is indeed a bare repository and is where all of the data under source control is stored locally for each Iguana instance. IguanaConfigurationRepo is just a non-bare clone where all changes to config files are made and committed. Each user also has a non-bare clone that resides in the edit folder, where all translator work is done and committed.
Iguana automatically keeps all of these non-bare repos up to date and in sync with IguanaMainRepo at all times based on user actions in the Iguana GUI. Therefore we recommended to NOT make any changes outside of Iguana via the git command line or any other interface at the risk of corrupting their state resulting in potential data loss or a corrupted instance.
When migrating an Iguana installation, all users should make sure their work is committed, then the only thing that needs to be brought over to the new installation/working directory is your IguanaMainRepo. Iguana will re-clone any non-bare repos that it requires on startup. For Deployment/Backup/Restore purposes please refer to the following documentation where you will find detailed instructions on how to go about doing this: http://help.interfaceware.com/v6/backup-and-restore
Software Development Lead