Skip to main content

Branching and Merging with Visual Studio and Perforce

This assignment required that we create a small C# project with a few classes and to use Perforce to sync our changes with a remote depot. The project required creating a linked list class, a player class, and then branching the project, making significant changes, and merging them back in to the main code line. The programming part of the assignment was fairly straightforward. Having done my data structures class in Java, the syntax was easy. I wasn't entirely confident of the particular implementation of the indexing of the list nodes, but I settled on assigning indexes by insertion order.

As I use git version control at my job, I didn't find the branching, merging, and conflict resolution to be too difficult. A significant difference was the necessity of checking out specific documents (as opposed to an entire branch) before modifying them. I also thought that the need to create a cleanup file to delete files produced by the build project was unwieldy. With git, a repo can simply add a list of files, directories, or extensions to the .gitignore file in the base directory so that these files are excluded from source control and do not need to be deleted every time.

On the other hand, using a GUI for committing and merging files was pretty nice, and the merge conflict tool was quite good as well. Overall, the tool worked well.

Comments

Popular posts from this blog