CompSci 308
Fall 2018
Software Design and Implementation

Using GIT in Teams

When working on a team project, you will need to develop a flow of working that minimizes potential conflict between each person's new code. The easiest way to do this is to give each person on the team their own "personal work space" to make changes and managing how these changes get integrated together. GIT provides branches and merges to manage this kind of work. However, inevitably, conflicts occur where a person needs to step in to think about how best to resolve multiple changes to the same piece of code.

To minimize conflicts and maximize team involvement in the process of creating code, this is the recommended workflow for GIT in this course.

Resources

Resolve Merge Conflicts

Today's goal is for your team to experiment with branching and merging in a controlled environment. Create some files in your Cell Society project repository (that you can to delete later if you want) to try different, conflicting, edits based on these excellent online tutorials: Learn GIT Branching (levels 1-4) and GIT Immersion (steps 24-30). You should also create a Merge Request from your personal branch to the master branch and have someone else on the team accept it.

Submission

Your team's Cell Society repository, with its multiple branches and commits that contain merges and conflicts, will serve as your submission for this lab.