summaryrefslogtreecommitdiff
path: root/builtin/merge-base.c
diff options
context:
space:
mode:
authorLibravatar Johannes Schindelin <johannes.schindelin@gmx.de>2019-01-18 07:09:27 -0800
committerLibravatar Junio C Hamano <gitster@pobox.com>2019-01-18 10:11:45 -0800
commit21853626eac565dd42572d90724b29863f61eb3b (patch)
tree32a358ae033aff39d216a954d1bd3b6e280acdff /builtin/merge-base.c
parentrebase: teach `reset_head()` to optionally skip the worktree (diff)
downloadtgif-21853626eac565dd42572d90724b29863f61eb3b.tar.xz
built-in rebase: call `git am` directly
While the scripted `git rebase` still has to rely on the `git-rebase--am.sh` script to implement the glue between the `rebase` and the `am` commands, we can go a more direct route in the built-in rebase and avoid using a shell script altogether. This patch represents a straight-forward port of `git-rebase--am.sh` to C, along with the glue code to call it directly from within `builtin/rebase.c`. This reduces the chances of Git for Windows running into trouble due to problems with the POSIX emulation layer (known as "MSYS2 runtime", itself a derivative of the Cygwin runtime): when no shell script is called, the POSIX emulation layer is avoided altogether. Note: we pass an empty action to `reset_head()` here when moving back to the original branch, as no other action is applicable, really. This parameter is used to initialize `unpack_trees()`' messages. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/merge-base.c')
0 files changed, 0 insertions, 0 deletions