Initialize an existing directory as a Git Repository.
Show modified files in working directory, staged for your next commit.
Add a file as it looks now to your next commit (stage).
This will stage all the files.
When -A is used , all files in the entire working tree are updated ( old version of Git used to limit the update to the current directory and its subdirectories ).
Commit your staged content as a new commit snapshot.
Restore working tree files. By specifying - -staged will only restore the index. ( Used to discard changes in working directory ).
Remove a file.
Show all commits in the current branch’s history.
Reset current HEAD to the specified state.
Save modified and staged changes.
List stack-order of stashed file changes.
Remove a single stashed state from the stash list and apply it to the top of the current working tree state.
Remove all the stash entries. Note that those entries will then be subject to pruning and may be impossible to recover.
With -m or -M option, will be renamed to . If exists, -M must be used to force the rename to happen.
(git remote → Manage set of tracked repositories.) Update all the branches set to track remote ones, but not merge any changes in.
Show remote urls after name.
Transmit local branch commits to the remote repository branch.
List your branches. * a will appear next to the currently active branch.
Create a new branch at the current commit.
Switch to another branch and check it out into your working directory.
Best utility for cleaning outdated branches. It will connect to a shared remote repository remote and fetch allremote branch refs.
Resets the index and working tree. Any changes to tracked files in the working tree since are discarded. Any untracked files or directories in the way of writing any tracked files are simply deleted.
Fetch and merge any commits from the tracking remote branch.
Retrieve an entire repository from a hosted location via URL.
Used to combine different commits into one single commit.
It occurs when two people made change in the same line, now git will get confused, which commit should it push or not.