Fixed issue #874: Add --rebase option to pull dialog

"--rebase" option is introduced by 25bd4c961830590ffdb51202e935fd168b7b2484,
but further work is needed.
So, the "Launch Rebase After Fetch" checkbox is hidden from Pull dialog.

For the conflict reason,
the Rebase dialog uses cherry pick(instead of "--rebase" option)
to perform rebase function.
And CLI option "--rebase" should not be used. (never and ever)

Therefor, if "Launch Rebase After Fetch" checkbox is checked in Pull dialog,
then "git.exe pull --rebase" is adapted to "Fetch & Rebase".

Signed-off-by: Yue Lin Ho <b8732003@student.nsysu.edu.tw>
Refactored: split CAppUtils::Merge()

Signed-off-by: Yue Lin Ho <b8732003@student.nsysu.edu.tw>
[WIP] Fixed issue 1608: Add "Retry" button where applicable

Tested:
 * Switch
 * Merge

Un-test:
 * Stash Save? (maybe no)
 * Pull
 * Push?
 * other command?

Signed-off-by: Yue Lin Ho <b8732003@student.nsysu.edu.tw>