Challenge 01 - Setup Your Repository

< Previous Challenge - Home - Next Challenge >

Introduction

Historically, version control has been the first component that teams implement as they start on a project. It is one of the oldest and most well understood components of DevOps. Version control systems allow developers to collaborate and simultaneously contribute to the same codebase. They can also help teams track versions (so code can be rolled back if bad changes are made) and track bugs, work, and testing by the team. Please take a moment to review the Git handbook to understand the basics of version control, focusing on the distributed version control technology, Git.

Description

In this challenge, you will ensure that you have a GitHub repo set up with the sample application code in it. There are two scenarios your coach may decide to use for this challenge:

Follow the instructions below only for the scenario your coach instructs you:

Create a new GitHub Repo and Commit the Sample Application Files

Now that we have a basic understanding of version control and Git, lets get some code checked into source control. DevOps best practices can apply to any programming language, so for today we have provided you a simple .NET Core web application to use.

If we were not supplied a repository in the next few steps you will need to create a repository and commit the supplied hackathon resource files into your repository supplied by your coach.

Use an Existing GitHub Repo with the Sample Application Files

Your coach will provide you the URL to an existing repo with the sample application code already in it and add you to this repo as a contributor.

DevOps best practices can apply to any programming language, so for today we have provided you a simple .NET Core web application to use.

Success Criteria

Learning Resources

Tips

Advanced Challenges (optional)

In this challenge, we have code in our repository! Version control is about more than pushing code to a centralized location–it is critical in keeping developers in sync with changes made by anyone else on your team. Thus, we care not only about pushing code up to a repository, but also pulling changes down from it.

To practice this, have another member of the team clone the repository to their local machine (or pull the new changes if already cloned). Let this person make a small change of their own to one of the files (perhaps adding a comment or a newline). Then, push the change back to GitHub. The rest of the team should then pull the change, to ensure they see it on their local machines. (See some of the above links on adding files and syncing changes if you get stuck).

< Previous Challenge - Home - Next Challenge >