1. Setting Up Git
Before you start using GitHub, you need to install and set up Git on your local machine.
Installation
Download and install Git from the official website.
Configuration
After installation, configure Git with your name and email:
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
2. Creating a Repository
Initialize a Local Repository
To start tracking a project with Git, navigate to your project directory and initialize a repository:
cd your-project-directory
git init
Clone a Remote Repository
To clone an existing repository from GitHub:
git clone https://github.com/username/repository.git
3. Basic Git Commands
Check Repository Status
To view the status of your working directory and staging area:
git status
Add Files to Staging Area
To add files to the staging area before committing:
git add filename
To add all changes:
git add .
Commit Changes
To commit the staged changes with a message:
git commit -m "Commit message"
4. Working with Branches
Create a New Branch
To create a new branch:
git branch branch-name
Switch to a Branch
To switch to an existing branch:
git checkout branch-name
Or create and switch to a new branch in one command:
git checkout -b new-branch-name
Merge Branches
To merge changes from another branch into the current branch:
git merge branch-name
5. Collaborating with Others
Push Changes to Remote Repository
To push your changes to a remote repository:
git push origin branch-name
Pull Changes from Remote Repository
To fetch and merge changes from a remote repository:
git pull origin branch-name
Fetch Changes
To fetch changes from a remote repository without merging:
git fetch origin
View Remote Repositories
To list all remote repositories:
git remote -v
Add a Remote Repository
To add a new remote repository:
git remote add origin https://github.com/username/repository.git
6. Viewing History
View Commit History
To view the commit history:
git log
View a Specific Commit
To view details of a specific commit:
git show commit-id
7. Undoing Changes
Unstage a File
To unstage a file from the staging area:
git reset HEAD filename
Revert a Commit
To revert a specific commit:
git revert commit-id
Discard Local Changes
To discard changes in your working directory:
git checkout -- filename
8. Working with Tags
Create a Tag
To create a new tag:
git tag tag-name
Push Tags to Remote
To push tags to a remote repository:
git push origin tag-name
Conclusion
Mastering these essential GitHub commands will help you effectively manage your projects and collaborate with others. As you become more comfortable with these commands, you'll be able to explore more advanced features of Git and GitHub, enhancing your productivity and efficiency as a developer. Happy coding!