A list of my commonly used Git commands
If you are interested in my Git aliases, have a look at my .bash_profile, found here: https://github.com/joshnh/bash_profile/blob/master/.bash_profile
--
Getting & Creating Projects Command Description git init Initialize a local Git repository git clone ssh://git@github.com/[username]/[repository-name].git Create a local copy of a remote repository
Command Description git status Check status git add [file-name.txt] Add a file to the staging area git add -A Add all new and changed files to the staging area git commit -m "[commit message]" Commit changes git rm -r [file-name.txt] Remove a file (or folder) git remote -v View the remote repository of the currently working file or directory
Command Description git branch List branches (the asterisk denotes the current branch) git branch -a List all branches (local and remote) git branch [branch name] Create a new branch git branch -d [branch name] Delete a branch git push origin --delete [branch name] Delete a remote branch git checkout -b [branch name] Create a new branch and switch to it git checkout -b [branch name] origin/[branch name] Clone a remote branch and switch to it git branch -m [old branch name] [new branch name] Rename a local branch git checkout [branch name] Switch to a branch git checkout - Switch to the branch last checked out git checkout -- [file-name.txt] Discard changes to a file git merge [branch name] Merge a branch into the active branch git merge [source branch] [target branch] Merge a branch into a target branch git stash Stash changes in a dirty working directory git stash clear Remove all stashed entries git stash pop Apply latest stash to working directory
Sharing & Updating Projects Command Description git push origin [branch name] Push a branch to your remote repository git push -u origin [branch name] Push changes to remote repository (and remember the branch) git push Push changes to remote repository (remembered branch) git push origin --delete [branch name] Delete a remote branch git pull Update local repository to the newest commit git pull origin [branch name] Pull changes from remote repository git remote add origin ssh://git@github.com/[username]/[repository-name].git Add a remote repository git remote set-url origin ssh://git@github.com/[username]/[repository-name].git Set a repository's origin branch to SSH
Command Description git log View changes git log --summary View changes (detailed) git log --oneline View changes (briefly) git diff [source branch] [target branch] Preview changes before merging