Module 1: Set Up Git Repo
Overview
In this module, you will set up a repository for your code so it
can be easily accessed over the Internet. In this example, we will
be using GitHub
What you will accomplish
-
Fork a GitHub repository to create a new one
-
Store code and metadata in GitHub
-
Interact with a code repository using Git
Key concepts
Version control—A system for storing source code and tracking any changes to it. Changes are stored as versions, so a developer can easily compare versions or choose to revert to an older version.
Git—An
open-source version
control tool
Git repository (repo)—All the files and directories that will be tracked by the version control system, including metadata. Each user will interact with a complete copy locally and push files to the hosted version to share changes.
Git commit—The method to add changes to a Git repository.
Pushing to a repository—Copying any changes stored via a commit from a local repository to a hosted one.
Forking a repository—Creating a copy of an existing repository.
Implementation
This tutorial assumes you have an existing GitHub account and Git
installed on your computer. If you don't have either of these two
installed, you can follow
these step-by-step
instructions
-
Sign in to GitHub
In a new browser tab, navigate to GitHub
and make sure you are logged into your account. -
Open the repo
In that same tab, open the aws-elastic-beanstalk-express-js-sample
repo. -
Fork the repo
Choose the white Fork button on the top right corner of the screen. Next, you will see a small window asking you where you would like to fork the repo.
-
Create the fork
Verify it is showing your account and choose Create a fork. After a few seconds, your browser will display a copy of the repo in your account under Repositories.
-
Copy the repo URL
Go to the repository
and choose the green Code button near the top of the page. To clone the repository using HTTPS, confirm that the heading says Clone with HTTPS. If not, select the Use HTTPS link.
Choose the white button with a clipboard icon on it (to the right of the URL).
-
Open a terminal
If you're on a Mac or Linux computer, open your terminal. If you're on Windows, launch Git Bash.
-
Clone the repo
In the terminal or Bash platform, whichever you are using, enter the following command and paste the URL you just copied when you clicked the clipboard icon. Be sure to change "YOUR-USERNAME" to your GitHub username. You should see a message in your terminal that starts with Cloning into. This command creates a new folder that has a copy of the files from the GitHub repo.
git clone https://github.com/YOUR-USERNAME/aws-elastic-beanstalk-express-js-sample
-
Modify the app.js file
In the new folder there is a file named app.js. Open app.js in your favorite code editor.
Change the message in line 5 to say something other than "Hello World!" and save the file.
-
Commit and push the change
Go to the folder created with the name aws-elastic-beanstalk-express-js-sample/ and Commit the change with the following commands:
git add app.js git commit -m "change message"
Push the local changes to the remote repo hosted on GitHub with the following command. Note that you need to configure Personal access tokens (classic) under Developer Settings in GitHub for remote authentication.
git push
-
Verify the repo updated
In your browser window, open GitHub
. In the left navigation panel, under Repositories, select aws-elastic-beanstalk-express-js-sample.
Choose the app.js file. The contents of the file, including your change, should be displayed.
Application architecture
Here is what our architecture looks like right now.
We have created a code repository containing a simple web app. We will be using this repository to start our continuous delivery pipeline. It's important to set it up properly so we push code to it.
