You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/en/Git-Basics/README.md

6.2 KiB

Basics of GIT for web-dev beginners👶

What is Git?

  1. Git is a distributed version control system.
  2. The entire codebase and history are available on every developers computer, making branching and merging easy.
  3. It is used as a Version Control System (VCS) to track changes in computer files.
  • Distributed version control
  • Coordinates work between multiple developers
  • Tracks who made changes and when
  • Allows reverting back at any time
  • Supports local & remote repositories

CONCEPTS OF GIT

  • Tracks the history of your code
  • Takes "snapshots" of your files
  • You decide when to take a snapshot by making a "commit"
  • You can revisit any snapshot at any time
  • Files can be staged before committing

Difference Between Git & GitHub

Git GitHub
Git is software GitHub is a cloud service
Git is installed locally on the system GitHub is hosted online
It is a command-line tool It is a graphical user interface
Git is maintained by Linux GitHub is maintained by Microsoft
Focuses on version control and code sharing Focuses on centralized source code hosting
Git is open-source licensed GitHub offers free and paid tiers
Git was released in 2005 GitHub was released in 2008

GIT Installation

  • Linux (Debian):
    $sudo apt-get install git
  • Linux (Fedora):
    $sudo yum install git
  • Download for Mac
  • Download for Windows

Installation Process Steps:

  1. Then continue with Next > Next > Next > Install

After Installation, configure Git using Git Bash

  1. git config --global user.name 'YourName'
  2. git config --global user.email 'YourEmail'

Git Commands


Getting & Creating Projects

Command Description
git init Initialize a local Git repository
git clone ssh://git@github.com/[username]/[repository-name].git Create a local copy of a remote repository

Basic Snapshotting

Command Description
git status Check the status
git add [file-name.txt] Add a file to the staging area
git add -A Add all new and changed files to the staging area
git commit -m "[commit message]" Commit changes
git rm -r [file-name.txt] Remove a file (or folder)
git push Push to the remote repository
git pull Pull the latest changes from the remote repository

Branching & Merging

Command Description
git branch List branches (the asterisk denotes the current branch)
git branch -a List all branches (local and remote)
git branch [branch name] Create a new branch
git branch -D [branch name] Delete a branch
git push origin --delete [branch name] Delete a remote branch
git checkout -b [branch name] Create a new branch and switch to it
git checkout -b [branch name] origin/[branch name] Clone a remote branch and switch to it
git branch -m [old branch name] [new branch name] Rename a local branch
git checkout [branch name] Switch to a branch
git checkout - Switch to the branch last checked out
git checkout -- [file-name.txt] Discard changes to a file
git merge [branch name] Merge a branch into the active branch
git merge [source branch] [target branch] Merge a branch into a target branch
git stash Stash changes in a dirty working directory
git stash clear Remove all stashed entries

Sharing & Updating Projects

Command Description
git push origin [branch name] Push a branch to your remote repository
git push -u origin [branch name] Push changes to the remote repository (and remember the branch)
git push Push changes to the remote repository (remembered branch)
git push origin --delete [branch name] Delete a remote branch
git pull Update the local repository to the newest commit
git pull origin [branch name] Pull changes from the remote repository
git remote add origin ssh://git@github.com/[username]/[repository-name].git Add a remote repository
git remote set-url origin ssh://git@github.com/[username]/[repository-name].git Set a repository's origin branch to SSH

Inspection & Comparison

Command Description
git log View changes
git log --summary View changes (detailed)
git log --oneline View changes (briefly)
git diff [source branch] [target branch] Preview changes before merging

Disclaimer:
This document has been translated using the AI translation service Co-op Translator. While we aim for accuracy, please note that automated translations may contain errors or inaccuracies. The original document in its native language should be regarded as the authoritative source. For critical information, professional human translation is recommended. We are not responsible for any misunderstandings or misinterpretations resulting from the use of this translation.