git rebase --continue (you would run this after you have fixed a conflict staged and want to continue the rebasing process)
* you can also recover after you have pushed the rebase using git
git rebase -i HEAD~2pick c164cd9 eslint fixes [Chester Rivas]
pick a4c0d8f finished refactoring the thing [Chester Rivas]
# Rebase c164cd9..a4c0d8f onto f0b1ed4 (2 commands)
#
# Commands:
# p, pick = use commit
# r, reword = use commit, but edit the commit message
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
# f, fixup = like "squash", but discard this commit's log message
# x, exec = run command (the rest of the line) using shell
# d, drop = remove commit
#
# These lines can be re-ordered; they are executed from top to bottom.
#
# If you remove a line here THAT COMMIT WILL BE LOST.
#
# However, if you remove everything, the rebase will be aborted.
#pick c164cd9 eslint fixes [Chester Rivas]
s a4c0d8f finished refactoring the thing [Chester Rivas]
# Rebase c164cd9..a4c0d8f onto f0b1ed4 (2 commands)
#
# Commands:
# p, pick = use commit
# r, reword = use commit, but edit the commit message
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
# f, fixup = like "squash", but discard this commit's log message
# x, exec = run command (the rest of the line) using shell
# d, drop = remove commit
#
# These lines can be re-ordered; they are executed from top to bottom.
#
# If you remove a line here THAT COMMIT WILL BE LOST.
#
# However, if you remove everything, the rebase will be aborted.
#*ideally you want to squash your commits into milestones in your code or any logical order that makes sense to you.
git reset --hard origin/ARC-0000rebase your branches only
squash commits to keep the history clear and concise
git rebase --abort to exit out of rebase mode
use tools like SourceTree to view the commit timeline
use WebStorm's merge conflict tools to resolve conflicts
git checkout ARC-000
git rebase origin/master
git push
#######################
# interactive and squashing commits
# last 5 commits locally
git rebase -i HEAD~5
# all commits from the time you branched off to your latest local commit
git rebase -i origin/master
# force push
git push -f
[rebase]
instructionFormat = %s [%an]*this will format each line when you run git interactive