Day 12 of #90daysofdevops challenge
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 maker.
git config -- global color.ui auto - Set automatic command line colouring for git for easy reviewing.
SETUP AND INIT:
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 AND SNAPSHOT:
Working with snapshots and the Git staging area.
git status - Show modified files in the working directory, staged for your next commit.
git add [file]- Add a file as it looks now to your next commit.
git reset [file] - Unstage a file while retaining the changes in working directory.
git diff - Diff of what is changed but not yet staged.
git diff --staged - Diff of what is staged but not yet committed.
git commit -a - Commit all local changes in tracked files.
git commit -m "[descriptive message]" - Commit your staged changes as a new commit snapshot.
INSPECT AND COMPARE :
Examining logs,diffs and object information.
git log - Show all commits in the current branch's history.
git log branchB..branchA - Show the commits on branchA that are not on branchB.
git log --follow[file] - Show the commits that changed the file, even across renames.
git diff branchB...branchA - Show the diff of what is in branchA that is not in branchB
git show [SHA] - Show any object in Git in a human-readable format.
SHARE AND UPDATE:
Retrieving updates from another repository and updating local repos.
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.
git push [alias][branch]- Transmit local branch commits to the remote repository branch.
git pull <remote><branch> - Fetch remote version and update local branch.
TRACKING 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 an indication of any paths that moved.
BRANCH AND MERGE :
Isolating work in branches, changing context and integrating changes.
git checkout <branch>- Switch to another branch and check it out in your working directory.
git branch - List your branches.
git branch -d <branch> - Delete a branch.
git fetch remote - Fetch all branches from the remote repo.
git merge branch - Merge the specified branch's history into the current branch.
REWRITE HISTORY:
Rewriting branches, updating commits and clearing history.
git rebase [branch] - Apply any commits of the current branch ahead of the specified branch.
git reset [file] - Unstage a file while retaining the changes in the working directory.
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**.**
EXTRA COMMANDS :
git revert <branch> - Creates a new commit to revert the specified commit.
Thanks for reading!!!!!!
HAPPY LEARNING!!!!!