Git
Create
Create an existing repository
git clone ssh://[email protected]/repo.gitCreate a new local repository
git initLocal changes
Changed files in your working directory
git statusChanges to tracked files
git diffAdd all current changes to the next commit
git add .Add some changes in <file> to the next commit
git add -p <file>Commit all local changes in tracked files
git commit -aCommit previously staged changes
git commitChange the last commit
Don‘t amend published commits!
git commit --amendCommit history
Show all commits, starting with newest
git logShow changes over time for a specific file
git log -p <file>Who changed what and when in
git blame <file>Branchs and Tags
List all existing branches
dig branch -avSwitch HEAD branch
git checkout <branch>Create a new branch based on your current HEAD
git branch <new-branch>Create a new tracking branch based on a remote branch
git checkout --track <remote/branch>Delete a local branch
git branch -d <branch>Mark the current commit with a tag
git tag <tag-name>Update and Publish
List all currently configured remotes
git remote -vShow information about a remote
git remote show <remote>Add new remote repository, named <remote>
git remote add <shortname> <url>Download all changes from <remote>, but don‘t integrate into HEAD
git fetch <remote>Download changes and directly merge / integrate into HEAD
git pull <remote> <branch>Publish local changes on a remote
git push <remote> <branch>Delete a branch on the remote
git branch -dr <remote/branch>Publish your tags
git push --tagsMerge and Rebase
Merge <branch> into your current HEAD
git merge <branch>Rebase your current HEAD onto <branch>
Don‘t rebase published commits!
git rebase <branch>Abort a rebase
git rebase --abortContinue a rebase after resolving conflicts
git rebase --continueUse your configured merge tool to solve conflicts
git mergetoolUse your editor to manually solve conflicts and (after resolving) mark file as resolved
git add <resolved-file>git rm <resolved-file>Undo
Discard all local changes in your working directory
git reset --hard HEADDiscard local changes in a specific file
git checkout HEAD <file>Revert a commit
by producing a new commit with contrary changes
git revert <commit>Reset your HEAD pointer to a previous commit …and discard all changes since then
git reset --hard <commit>... and preserve all changes as unstaged changes
git reset <commit>... and preserve uncommitted local changes
git reset --keep <commit>Help and Documentation
git help <command>Useful links
Last updated
Was this helpful?