My friend and I want to work on a small project together for school. The problem is though, we don’t exactly know the best way to do it. We have downloaded Perforce, as it seems to be our solution, but we still have no idea how to work on the project together. Do we each have our own project files on our machines, or do we both work from one project located on dropbox or box? Or, since he is mainly working on all the programming, and I on the art, would it be best for us to work in separate projects, then merge them when we want to create a build? We are new to all this, and are just having a hard time wrapping our heads around it.
Not used Perforce myself, use Tortoise SVN but the idea behind version control is the same on most parts. Your project will be placed in a repository (A dropbox repository for instance). Then on each of your machines, you would have a copy of this project from the repository. When someone makes changes, they commit these changes to the repository and then someone on the other machine can update and this will merge the data from the repository with their current project.
Unfortunately, I’m not 100% clear on the method to setup Perforce over the internet as our version control is set across a local network. If it is just the two of you and you are both working more-or-less on separate parts of the project, it may be better to simply merge the art and code yourselves as sending large assets (textures/props/maps) across an internet connection could become quite time consuming.
I use Tortoise SVN as well with the provider Cloudforge. It’s very cheap and effective!
However you must set up SVN to ignore some of the folders or else you’ll easily max your quota with files that are generated locally that the rest of the team will have on their machine anyway. Here’s the answer I got when asking the same thing (I struggle with Perforce myself to be honest):