table of content
$ git config --global user.name “Your Name”
Set the name that will be attached to your commits and tags.
$ git config --global user.email “[email protected]”
Set the e-mail address that will be attached to your commits and tags.
$ git init [project name]
Create a new local repository. If project name is provided, Git will
create a new directory name project name and will initialize a
repository inside it. If project name is not provided, then a new
repository is initialized in the current directory.
$ git clone [project url]
Downloads a project with the entire history from the remote repository.
$ git status
Displays the status of your working directory. Options include new,
staged, and modified files. It will retrieve branch name, current commit
identifier, and changes pending commit.
$ git add [file]
Add a file to the staging area. Use in place of the full file path to add all
changed files from the current directory down into the directory tree.
$ git commit -m "[message]"
Create a new commit from changes added to the staging area.
The commit must have a message!
$ git fetch [remote]
Fetch changes from the remote, but not update tracking branches.
$ git pull [remote]
Fetch changes from the remote and merge current branch with its
upstream.
$ git push [--tags] [remote]
ush local changes to the remote. Use --tags to push tags.
$ git push -u [remote] [branch]
Push local branch to remote repository. Set its copy as an upstream.
$ git branch [-a]
List all local branches in repository. With -a: show all branches
(with remote).
$ git branch [branch_name]
Create new branch, referencing the current HEAD.
$ git checkout [-b][branch_name]
Switch working directory to the specified branch. With -b: Git will
create the specified branch if it does not exist.
$ git merge [from name]
oin specified [from name]
branch into your current branch (the one
you are on currently).
$ git branch -d [name]
Remove selected branch, if it is already merged into any other.
-D instead of -d forces deletion.
$ git tag
List all tags.
$ git tag [name] [commit sha]
Create a tag reference named name for current commit. [Add commit sha]
to tag a specific commit instead of current one.
$ git tag -a [name] [commit sha
Create a tag object named name for current commit.
$ git reset [--hard] [target reference]
Switches the current branch to the target reference, leaving
a difference as an uncommitted change. When --hard is used,
all changes are discarded.
$ git revert [commit sha]
Create a new commit, reverting changes from the specified commit.
It generates an inversion of changes.