I have a project which uses TCP/IP communication to communicate with a server.
For my project, i have setup a server in a VM which i use for my tests.
When i run my tests, the VM starts, my tests run, and the VM will be closed after the test run.
Because my VM belongs to my project-resources, i want to add it to my repository.
There is only one problem, my VM is 6.5 GB and i have a GIT repository.
GIT always notes: Do not store big files in the repository.
And i do want to avoid this.
How should i arrange this in my project?
Should i store the VM elsewhere? (And retrieve it when i need it)
Or do I have other options?
Store it elsewhere. Test machines are part of the environment, like compilers or external libraries, and not part of the source. Thus, they don’t belong into the source control system.
For very project-specific files, a common pattern is to store an URI identifying the machine (e.g. using rsync://) and a checksum in the git and let your build system fetch the machine.