Skip to content

Instantly share code, notes, and snippets.

@hickerm
Last active March 13, 2017 18:24
Show Gist options
  • Save hickerm/7126408 to your computer and use it in GitHub Desktop.
Save hickerm/7126408 to your computer and use it in GitHub Desktop.
to paste text into the git bash use the keyboard shortcut, Insert
//add all files (new or modified) and commit in one command
git commit -am 'commit message'
//show last 5 commits on one line
git log --pretty=oneline --max-count=5
//create a branch and switch to it at same time
git checkout -b branchname
//resolve conflicts via visual merge tool
git mergetool
//show last commit on each branch
git branch -v
//merge branch
//check out the branch you wish to merge into and then run the git merge command
//this scenario would be working on the bug_29868 branch and it's ready to merge/deploy/test
git checkout stg
git merge bug_29868
//see which branches are already merged into the branch you’re on
//branches on this list without the * in front of them are generally fine to delete with git branch -d
//as you've already incorporated their work into another branch, so you’re not going to lose anything
git branch --merged
//see which branches you haven’t yet merged in
//if you try to delete these, it will fail as a safety net, but you can force the deletion with -D
git branch --no-merged
//undo a git merge with conflicts
git merge --abort
//delete a local branch
git branch -d the_local_branch
//fetch a remote branch, creates a local branch that tracks a remote branch
git checkout --track origin/the_remote_branch_name
//rename a local branch
git branch -m <oldname> <newname>
//if you want to rename the current branch
git branch -m <newname>
//force pull - revert your local to whatever the repo is
git fetch --all
git reset --hard origin/master (or origin/mo, origin/stg, etc)
//git fetch downloads the latest from remote without trying to merge or rebase anything
//git reset resets the master/mo/stg/etc branch to what you just fetched
//see what you've changed but not yet staged
git diff
//see what you've staged that will go into your next commit
git diff --cache
//cherry pick changes
//* copy the SHA hash from the commit/branch you want (either something like the first 6 or 7 characters from the bash or the entire thing via github)
//* switch to the bracnh you want to insert the commit into
//* cherry pick your commit:
git cherry-pick c90fd66
//not ideal to do this, should be working/merging branches for more sanity
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment