Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals.
sudo apt install git
git [--version] [--help] [-C <path>] [-c <name>=<value>]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>]
These are common Git commands used in various situations:
start a working area (see also: git help tutorial)
clone Clone a repository into a new directory
init Create an empty Git repository or reinitialize an existing one
work on the current change (see also: git help everyday)
add Add file contents to the index
mv Move or rename a file, a directory, or a symlink
reset Reset current HEAD to the specified state
rm Remove files from the working tree and from the index
examine the history and state (see also: git help revisions)
bisect Use binary search to find the commit that introduced a bug
grep Print lines matching a pattern
log Show commit logs
show Show various types of objects
status Show the working tree status
grow, mark and tweak your common history
branch List, create, or delete branches
checkout Switch branches or restore working tree files
commit Record changes to the repository
diff Show changes between commits, commit and working tree, etc
merge Join two or more development histories together
rebase Reapply commits on top of another base tip
tag Create, list, delete or verify a tag object signed with GPG
collaborate (see also: git help workflows)
fetch Download objects and refs from another repository
pull Fetch from and integrate with another repository or a local branch
push Update remote refs along with associated objects
'git help -a' and 'git help -g' list available subcommands and some
concept guides. See 'git help <command>' or 'git help <concept>'
to read about a specific subcommand or concept.
Get noreply e-mail for your account from https://github.com/settings/emails
git config --global user.email [email protected]
git config --global user.name example
git add <file>
git commit -m '<description>'
git push
Host github.com
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile private_key
git init
git remote add origin [email protected]:<user>/<repo>.git
git add -A
git commit -m '<description>'
git branch -M master
git push -u origin master
Create the file .gitmodules in root of repo and add something like:
git submodule add https://github.com/example/example
When repo is cloned, run the following two commands to clone the sub-module
git submodule init
git submodule update
git rm file1.txt
git commit -m "remove file1.txt"
git rm --cached file1.txt
git commit -m "remove file1.txt"
$ git shortlog -s -n
74 crypt0rr
34 johndo
7 janedo
5 anonymous