Git 101

Git 101

Table of contents

No heading

No headings in the article.

Git is a powerful and versatile version control system that developers and teams widely use to manage and collaborate on software projects. Whether you're working on a small personal project or a large enterprise application, git can help you keep track of changes, manage multiple versions, and collaborate with others.

It helps in distributed development. This means that multiple people can work on the same project at the same time, and git will automatically merge their changes together when they're ready to be combined. This makes it easy for teams to work together, even when they're located in different parts of the world. Another important feature of git is its ability to handle branching and merging. This allows you to create multiple versions of a project, each with its own set of changes. You can then merge these branches together when you're ready to combine them. This makes it easy to experiment with new features or bug fixes without affecting the main version of the project.

To get started with git, you'll first need to install it on your computer. You can download the appropriate version for your operating system from the git website.

Installing git on different operating systems is a straightforward process. Here are the basic steps for installing git on Mac, Windows, and Linux:

Mac:

brew install git

Windows:

  • Download the installer package from the git website: git-scm.com/download/win

  • Open the installer package and follow the prompts to install git on your Windows computer.

Linux:

  • The installation process for git on Linux will vary depending on the specific distribution you're using. On Ubuntu and Debian, you can use the following command to install git:

      sudo apt-get install git
    
  • On Arch Linux, use this command:

      sudo pacman -S git
    

Once you have git installed, you can create a new repository on your local machine using the command git init. This will create a new directory that will be used to store your project files. Once you have a repository set up, you can start making changes to your project files. Every time you make a change, you'll need to commit it to git using the command git commit. This will save a snapshot of your project files at that point in time. You can then use the command git log to view a history of all the commits that have been made to your project. If you're working on a team, you can use git to collaborate with others. You can use the command git push to send your changes to a remote repository, such as one hosted on GitHub. Others can then use the command git pull to download your changes and merge them into their own local copies of the repository.

Some common git commands I use on a daily basis:

  • git init Initializes a new git repository in the current directory.

  • git clone [repository] Creates a copy of a remote repository on your local machine.

  • git status Shows the current status of the repository, including any changes that have been made but not yet committed.

  • git add [file] Adds a file to the staging area, preparing it to be committed.

  • git commit -m "[message]" Creates a new commit with the current changes and includes a message describing the changes.

  • git branch Shows a list of all the branches in the repository and indicates which one you are currently on.

  • git branch [branch name] Creates a new branch with the specified name.

  • git checkout [branch name] Switches to the specified branch.

  • git merge [branch name] Merges the specified branch into the current branch.

  • git pull Fetches and merges any changes from the remote repository.

  • git push Pushes any local commits to the remote repository.

Overall, git is a powerful and versatile tool that can help you manage and collaborate on software projects. Whether you're a solo developer or part of a team, git can help you keep track of changes, manage multiple versions, and collaborate with others.