Add support for git-grep command.

Signed-off-by: Sébastien Gross <seb•ɑƬ•chezwam•ɖɵʈ•org>
grep is only required at compile time.

Signed-off-by: Sébastien Gross <seb•ɑƬ•chezwam•ɖɵʈ•org>
Change --line-number to -n to be compatible with old git versions.

Signed-off-by: Sébastien Gross <seb•ɑƬ•chezwam•ɖɵʈ•org>
Merge commit '5cddbd6476e510f160e9e2b4f7e4bb3c0a0dba35' into renard/git-grep-support
remove useless (END) marker
Adds an option to determine when to set upstream while pushing.

This answers #562.

This option is useful in the case where the user uses multiple remotes
for a branch.
When pushing changes to the non upstream remote the user is not asked if
he wants to change its upstream.
However, when no upstream is set, the question is asked.