Development
Gitignore
Introduction
Git is a distributed version control system that allows you to track changes in your codebase, collaborate with others, and manage your project’s history.
Essential Commands
Getting & Creating Projects
Command Description git init
Initialize a local Git repository git clone ssh://[email protected] /[username]/[repository-name].git
Create a local copy of a remote repository
Basic Snapshoting
Command Description git status
Check 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)
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 remote repository (and remember the branch) git push
Push changes to remote repository (remembered branch) git push origin --delete [branch name]
Delete a remote branch git pull
Update local repository to the newest commit git pull origin [branch name]
Pull changes from remote repository git remote add origin ssh://[email protected] /[username]/[repository-name].git
Add a remote repository git remote set-url origin ssh://[email protected] /[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
Email and Name configuration
Local
git config user.email "[email protected] "
git config user.name "John Doe"
Global
git config --global user.email "[email protected] "
git config --global user.name "John Doe"
Branch Management
Delete branch from remote
git push < remote_nam e > --delete < branch_nam e >
example:
git push origin --delete Moving-to-Hexagonal-Architecture
Delete branch from local
git fetch --all --prune
Gitignore
Git ignore is a file that tells git which files and directories to ignore. It is useful when you don’t want to commit certain files or directories to the repository.
Create a .gitignore file
touch .gitignore
Add files to ignore
.env
node_modules/
.venv
.DS_Store
*.log