From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-Status: No, score=-3.6 required=3.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_PASS, SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by dcvr.yhbt.net (Postfix) with ESMTP id 3A9F51F670 for ; Sat, 7 Nov 2020 06:14:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727380AbgKGGKF (ORCPT ); Sat, 7 Nov 2020 01:10:05 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49426 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726320AbgKGGKF (ORCPT ); Sat, 7 Nov 2020 01:10:05 -0500 Received: from mail-ot1-x343.google.com (mail-ot1-x343.google.com [IPv6:2607:f8b0:4864:20::343]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E0DE1C0613CF for ; Fri, 6 Nov 2020 22:10:04 -0800 (PST) Received: by mail-ot1-x343.google.com with SMTP id l36so3438865ota.4 for ; Fri, 06 Nov 2020 22:10:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=OvTiINTIbyUYnndgcogzWuNNqjlWZuD6h/tYz4vK/k8=; b=HqVoDPD023qUlVt3xsZispSwbsK9sjNlXxH1+r1dIEQUbdNtH8iN6quls4+Wn8y513 o1UHEc8t4HMscEQfyp1uYJldz0iBunDMjv9ybilz/5pPalrkYmjJUPPSZBr2sH+WOBWe mWwOwA8IwvrZwdJ8xrhFMts1VAd3DKy7mfm/n0irrZqTuKLcV2IhqknZ7SEtE0GeENEz MZ1WeJKtO5wtdspa+eWQauHRIM17jDaoa+kgY5Br6Gflx2Okyf/Ju5Mf2Defykr3Gq92 EIwwS8OakYndy94IzPro0A0GjE5NCCGCcl3KNYU2kzPptQe8n6hGDc+9nEXiRISq0QMR fmRQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=OvTiINTIbyUYnndgcogzWuNNqjlWZuD6h/tYz4vK/k8=; b=a6rsoPjOchJ3M3xDLD0U2s2JEFYhN4Tpzgqa3hi1DyJwe2xzIwbNMmvhNQ57E+ICsp UPJdflRffaFcWyk+6RwnXjAwqrcxkWmzBJH9PMOvRx76qZDzu1RRGkM+dXx40vHGjdyT 2avJKKEb/GtGVGVOVa6tJpccud1amTjS5HixH7dhEIK0EKNZhATb5ddDAzpx6TJ1kHg1 R3XesM1vCRlm14DWFMVPEJ7OheT5SUC3myP2XNFN6ITdQNr9KXUUNH8ZZeu2vXaOPSNt 9OuGRJRh7ogK3E2MXFvw13ZcAZdUeX8QZaTHmU4HQKBhlom/wXjM6YLgM5bo3nmjftgf l6vw== X-Gm-Message-State: AOAM5314t2DztWoKNt8oGHMbkeHLBlArHHI9oEry8AImti/VcOq57Guj 6UgpI2lrSI60aR5FCzY6gtOkHnMO8rNH1XD/IHA= X-Google-Smtp-Source: ABdhPJzEdBVlnMSD+kS9YXf0rsGfeCHAg8w1FuTc5uwHScx/Rk7Q/z3PHix6VqhrGvUJfutDpmCeup4PkcoPjdRmUtY= X-Received: by 2002:a9d:8d7:: with SMTP id 81mr3533568otf.345.1604729404174; Fri, 06 Nov 2020 22:10:04 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Elijah Newren Date: Fri, 6 Nov 2020 22:09:53 -0800 Message-ID: Subject: Re: [PATCH v4 0/4] Beginning of new merge strategy: New API, empty implementation To: Jacob Keller Cc: Elijah Newren via GitGitGadget , Git mailing list , Taylor Blau , Peter Baumann , Jonathan Tan , Eric Sunshine , =?UTF-8?Q?SZEDER_G=C3=A1bor?= Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Hi Jake, On Mon, Nov 2, 2020 at 10:52 AM Elijah Newren wrote: > > On Mon, Nov 2, 2020 at 1:28 AM Jacob Keller wrote: > > > > On Thu, Oct 29, 2020 at 1:34 PM Elijah Newren via GitGitGadget > > wrote: > > > > > > In this series, I show the new merge API I have developed in merge-ort, and > > > show how it differs from that provided by merge-recursive. I do this in four > > > steps, each corresponding to a patch. > > > > > > > I'm definitely excited by this project. I'm curious if you have any > > further implementation as a WIP that could be played with to see the > > end result of the new merging? > > > > I definitely like this approach where you work in smaller increments > > to make the implementation easier to review! > > I usually keep the 'ort' branch of https://github.com/newren/git > functional (no promises, though). It has lots of ifdefs, super ugly > commits, todos & fixmes, and random additional (non-code) files where > I was tracking various things I was working on, so the code and the > tree may not be super readable, but it should be usable (and passes > all the tests) -- just set pull.twohead=ort in your git config, or set > the environment variable GIT_TEST_MERGE_ALGORITHM=ort. > > One warning: git cherry-pick --continue fails with "Cannot specify > both --continue and --strategy"; my handling to set a --strategy > option when pull.twohead was set apparently needs some tweaks. If you > spot any bugs or other issues, let me know. In addition to fixing this "cherry-pick --continue" bug last Monday, I discovered a bug yesterday while re-merging all the merge commits in the linux kernel causing it to fail an assertion. I'm surprised I hadn't hit that sooner, but if you're testing it out you may want to update your copy to the latest version of the 'ort' branch (make sure it has commit 067e5c1a38, "merge-ort: fix bug with cached_target_names not being initialized in redos", 2020-11-06).