Ultimate Git and GitHub Cheat Sheet: Essential Commands and Tips

Brief knowledge of Git

Git is an adaptation control framework that is utilized to track changes in computer records and plan work on those records among different individuals. It is a dispersed version control framework, which implies that it permits different clients to work on the same records simultaneously and keeps track of changes made to the records by each client. Git is broadly utilized in computer program improvement and has become a standard tool for collaborating on code.

Installation

With platform-specific installers for Git, GitHub also provides the ease of staying over-to-date with the rearmost releases of the command line tool while furnishing a graphical stoner interface for day-to-day commerce, review, and depository synchronization.

GitHub for Windows: https://windows.github.com
GitHub for Mac: https://mac.github.com

For Linux and Solaris platforms, the latest release is available on the official Git website. Git for All Platforms: https://git-scm.com

Git for All Platforms: https://git-scm.com

SETUP

Configuring user information used across all local repositories.

git config --global user.name "[firstname lastname]"
set a name that is identifiable for credit when reviewing version history.

git config --global user.email "[valid-email]"
set an email address that will be associated with each history marker.

git config --global color.ui auto
Set automatic command line coloring for Git for easy review.

INIT & Clone

Configuring user information, initializing, and cloning repositories.

git init
initialize an existing directory as a Git repository.

git clone [URL]
retrieve an entire repository from a hosted location via URL.

Stage & Snapshot

Working with snapshots and the Git staging area.

git status
show modified files in the working directory, stage for your next commit.

git add [file]
add a file as it looks now to your next commit (stage).

git reset [file]
unstage a file while retaining the changes in the working directory.

git diff
diff of what is changed but not staged.

git diff --staged
diff of what is staged but not yet committed.

git commit -m "[descriptive message]"
commit your staged content as a new commit snapshot.

BRANCH & MERGE

Isolating work in branches, changing context, and integrating changes.

git branch
list your branches, a* will appear next to the currently active branch.

git branch [branch-name]
create a new branch at the current commit.

git checkout
switch to another branch and check it out in your working directory.

git merge [branch]
merge the specified branch's history into the current one.

git log
show all commits in the current branch's history.

INSPECT & COMPARE

Examining logs, diffs, and object information.

git log
show the commit history for the currently active branch.

git log branchB..branchA
show the commits on branch A that are not on branchB.

git log --follow [file]
show the commits that changed file, even across renames.

git diff branchB...branchA
show the diff between what is in branchA and what is not in branchB.

git show [SHA]
show any object in Git in human-readable format.

TRACKING PATH CHANGES

Versioning file removes and path changes.

git rm [file]
delete the file from the project and stage the removal for commit.

git mv [existing-path] [new-path]
change an existing file path and stage the move.

git log --stat -M
show all commit logs with the indication of any paths that moved.

IGNORING PATTERNS

Preventing unintentional staging or committing of files.

logs/
*.notes
pattern*/

Save a file with desired patterns as .gitignore with either direct string matches or wildcard globs.

git config --global core.excludesfile [file]
system-wide ignore pattern for all local repositories.

SHARE & UPDATE

Retrieving updates from another repository and updating the local repository. I

git remote add [alias] [URL]
add a git URL as an alias.

git fetch [alias]
fetch down all the branches from that Git remote.

git merge [alias]/[branch]
merge a remote branch into your current branch to bring it up to date.

REWRITE HISTORY

Rewriting branches, updating commits, and clearing history.

git rebase [branch]
apply any commits of the current branch ahead of the specified one.

git reset --hard [commit]
clear staging area, rewrite the working tree from the specified commit.

TEMPORARY COMMITS

Temporarily store modified, tracked files to change branches.

git stash
Save modified and staged changes.

git stash list
list stack order of stashed file changes.

git stash pop
write working from the top of the stash stack.

git stash drop
discard the changes from the top of the stash stack.


Download this as a PDF by clicking on the below item

Do comment let us know your valuable response towards above post

Previous Post Next Post