At the end of this project, you should be able to explain the following concepts without the help of Google:
-
Source Code Management:
- Understanding the concept of version control for managing source code.
-
Git:
- Knowledge of the version control system Git.
-
GitHub:
- Understanding GitHub as a web-based platform for version control and collaboration.
-
Difference between Git and GitHub:
- Distinguishing between the Git version control system and the GitHub platform.
-
Creating a Repository:
- Ability to create a Git repository.
-
README:
- Understanding what a README file is and its importance.
-
Writing Good READMEs:
- Knowing how to write informative and helpful README files.
-
Committing:
- Understanding the concept of committing changes in Git.
-
Writing Helpful Commit Messages:
- Knowing how to write clear and concise commit messages.
-
Pushing Code:
- Ability to push code to a remote repository.
-
Pulling Updates:
- Knowing how to pull updates from a remote repository.
-
Creating a Branch:
- Ability to create branches in Git.
-
Merging Branches:
- Understanding the process of merging branches in Git.
-
Working as Collaborators:
- Knowledge of collaborating on a project using Git.
-
Files in a Repository:
- Knowing which files should and should not appear in a Git repository.
- Prohibition of Plagiarism:
- Understanding the strict prohibition of plagiarism and its consequences.
-
README.md for alx-zero_day Repo:
- A
README.md
file at the root of thealx-zero_day
repo, containing a description of the repository.
- A
-
README.md for Project (0x03-git):
- A
README.md
file at the root of the folder of this project (i.e.,0x03-git
), describing the purpose of this project.
- A
-
Command Line Usage:
- Do not use GitHub’s web UI for project tasks; use the command line, except for operations that can only be done through the web UI.
-
Answer Files:
- Your answer files should only contain the command and nothing else.
At the end of this project, you should be able to reproduce and understand these command lines:
$ git clone <repo>
$ touch test
$ git add test
$ git commit -m "Initial commit"
$ git push origin main