Skip to content
  • Ævar Arnfjörð Bjarmason's avatar
    rebase: remove the rebase.useBuiltin setting · d03ebd41
    Ævar Arnfjörð Bjarmason authored and Junio C Hamano's avatar Junio C Hamano committed
    Remove the rebase.useBuiltin setting, which was added as an escape
    hatch to disable the builtin version of rebase first released with Git
    2.20.
    
    See [1] for the initial implementation of rebase.useBuiltin, and [2]
    and [3] for the documentation and corresponding
    GIT_TEST_REBASE_USE_BUILTIN option.
    
    Carrying the legacy version is a maintenance burden as seen in
    7e097e27 ("legacy-rebase: backport -C<n> and --whitespace=<option>
    checks", 2018-11-20) and 9aea5e92 ("rebase: fix regression in
    rebase.useBuiltin=false test mode", 2019-02-13). Since the built-in
    version has been shown to be stable enough let's remove the legacy
    version.
    
    As noted in [3] having use_builtin_rebase() shell out to get its
    config doesn't make any sense anymore, that was done for the purposes
    of spawning the legacy rebase without having modified any global
    state. Let's instead handle this case in rebase_config().
    
    There's still a bunch of references to git-legacy-rebase in po/*.po,
    but those will be dealt with in time by the i18n effort.
    
    Even though this configuration variable only existed two releases
    let's not entirely delete the entry from the docs, but note its
    absence. Individual versions of git tend to be around for a while due
    to distro packaging timelines, so e.g. if we're "lucky" a given
    version like 2.21 might be installed on say OSX for half a decade.
    
    That'll mean some people probably setting this in config, and then
    when they later wonder if it's needed they can Google search the
    config option name or check it in git-config. It also allows us to
    refer to the docs from the warning for details.
    
    1. 55071ea2 ("rebase: start implementing it as a builtin",
       2018-08-07)
    2. d8d0a546 ("rebase doc: document rebase.useBuiltin", 2018-11-14)
    3. 62c23938 ("tests: add a special setup where rebase.useBuiltin is
       off", 2018-11-14)
    3. https://public-inbox.org/git/nycvar.QRO.7.76.6.1903141544110.41@tvgsbejvaqbjf.bet/
    
    
    
    Acked-by: default avatarJohannes Schindelin <johannes.schindelin@gmx.de>
    Signed-off-by: default avatarÆvar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    d03ebd41