From owner-freebsd-git@freebsd.org Tue Oct 1 14:32:04 2019 Return-Path: Delivered-To: freebsd-git@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E9243137E95 for ; Tue, 1 Oct 2019 14:32:04 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk1-x733.google.com (mail-qk1-x733.google.com [IPv6:2607:f8b0:4864:20::733]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 46jMD36hwFz3R9P for ; Tue, 1 Oct 2019 14:32:03 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qk1-x733.google.com with SMTP id y189so11434572qkc.3 for ; Tue, 01 Oct 2019 07:32:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Hxly4NBYdzK73CIqz/TaaJjtfQzeX+Zrj1dVOVHB/Z8=; b=CaRmnU4ECCbVGxt82RbtwRceAzEJty6S74JBcSAQOjtXwbntgGZzKLK+B7ZkEbhepc lnW5DLevlwSGYFPkk+YjoVDsgovRSCCdkN8zpZvD5bkYNRjz9cbzFtLW4s3IqGjLUSCU dzWaOa6qZk9yLOkTanu0PfdIH9BFLarqz2oKkNnWwaf75A4cZ7Mof4DpbwKCgbNC75IY hd7/AHjczz8hV4JEOje2LQCkrnzV5xy9kEuY/ovJSJv1En2NaXc8LH5+fFYpTje39EL2 rlIa1lciQdy3OYUKQag2PwNhTftKJ6fzdxUHnbML27wLtTOCMTeXnPtXJIrVzbLU23Ov ddbA== 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=Hxly4NBYdzK73CIqz/TaaJjtfQzeX+Zrj1dVOVHB/Z8=; b=X8jnzBLaiZzYGbLxKo+W9oLtWVZ9avOzUBWKrVAOtF4gNfL8N9H+8mZuQc03GWLUwy 4v1PfzxLxVcmbBwhO58N5ZjdPe2xcQ0S1rlDxqVdlSI6TJKbB4U21+J2uhWuaLBAtTlp FtCZkGVmPdWiASu2ie7B14RtO03Le8Vs8xt6NEsIhnlnYEV/q/dUDd9WzuG4bSbBPf2m frdvq4S4m/swSLRn9iEj9ysB4y3z7OdFdSYgjJf1GccPovqNkFn+NezGSKfINyDfyy2m CKwK3FL4WJyndBL3iIW6UFwXAJD3rT6Iv4473laXtxzWXnB+Vu5kDB7LQ05xQifFGvd7 oiXg== X-Gm-Message-State: APjAAAX6mN1IhMl6t3+ENouC1Z5cnHB0VYXhjXnExQwSKxpYupIbLPTB D9Z5Gx2AbfF0pz4CDDbKB/K2VYbnRe3Y3BYfYG866Dmn X-Google-Smtp-Source: APXvYqzw6XyL4lMd26os/9Et90hVq0sAqj7zzQ3Ld3q6pEkEVyFgQFute682xKB68t20yXMZjY17Mtasd5M4q1MnJnc= X-Received: by 2002:a37:6787:: with SMTP id b129mr6526279qkc.60.1569940322648; Tue, 01 Oct 2019 07:32:02 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Warner Losh Date: Tue, 1 Oct 2019 08:31:51 -0600 Message-ID: Subject: Re: Service disruption: git converter currently down To: Ed Maste Cc: Ryan Stone , freebsd-git@freebsd.org, =?UTF-8?Q?Ulrich_Sp=C3=B6rlein?= X-Rspamd-Queue-Id: 46jMD36hwFz3R9P X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=bsdimp-com.20150623.gappssmtp.com header.s=20150623 header.b=CaRmnU4E; dmarc=none; spf=none (mx1.freebsd.org: domain of wlosh@bsdimp.com has no SPF policy when checking 2607:f8b0:4864:20::733) smtp.mailfrom=wlosh@bsdimp.com X-Spamd-Result: default: False [-4.82 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[bsdimp-com.20150623.gappssmtp.com:s=20150623]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; TO_DN_SOME(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-git@freebsd.org]; DMARC_NA(0.00)[bsdimp.com]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[bsdimp-com.20150623.gappssmtp.com:+]; RCVD_IN_DNSWL_NONE(0.00)[3.3.7.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0]; R_SPF_NA(0.00)[]; FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com]; MIME_TRACE(0.00)[0:+,1:+,2:~]; IP_SCORE(-2.82)[ip: (-9.31), ipnet: 2607:f8b0::/32(-2.58), asn: 15169(-2.16), country: US(-0.05)]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com]; RCVD_TLS_ALL(0.00)[]; FREEMAIL_CC(0.00)[gmail.com] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: freebsd-git@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion of git use in the FreeBSD project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Oct 2019 14:32:05 -0000 On Tue, Oct 1, 2019 at 7:39 AM Ed Maste wrote: > On Mon, 30 Sep 2019 at 15:17, Ryan Stone wrote: > > > > On Thu, Sep 26, 2019 at 10:27 AM Ed Maste wrote: > > > If you try this in a tree with changes (i.e., try applying it to a > > > long-running merge-based branch) every modified file will result in a > > > conflict, but they can be trivially resolved in favour of the first > > > version. From that point on merging from the "new" conversion will > > > work as expected. > > > > You don't have to do this manually. "git merge -s ours > > origin/svn_head" will record a merge but will not make any changes to > > the local tree. > > Thanks Ryan. So that can be used to trivially accommodate changed > hashes in a merge-workflow long-lived downstream project (with the > downside that two copies of every commit after the divergence will > appear in vanilla `git log`). > I'm pretty sure you'd need to merge to the same svn rev in the new-hash branch as your last merge point, though. I need to test that, though. Usually a merge is to the top of the thing you are merging, so some caution is needed. And all the -s does is accept all our 'conflicts'.... For a rebase-workflow branch `git rebase --onto` can be used to move > commits across a set of changed hashes. For example, assuming we have > a branch with commits on top of on origin/master they can be moved to > origin/svn_head via: > > git rebase --onto origin/svn_head origin/master > kinda. It would rebase the current branch onto the new tip of svn_head, not the current branch point. This isn't quite what you want in many cases because it will pull in new changes. The --onto arg needs to be the same svn rev in the new-stream as the current common ancestor of the current branch and origin/master. And while it's often convenient to do this, if the new changes have merge conflicts, then you have to cope with those or abort the rebase. If you are looking for something that's an exact leap sidewise, it's less trivial to do. And while many people may be able to make the jump forward, we need to have a good story for those that can't. it can be scripted, I'm sure, and we should provide those scripts. So for a single tree, with a single branch, I'll grant trivial. I have 3 or 4 trees now with a total of about 100 branches in various stages of WIPness. For that, it's not at all trivial because maybe 10 of the WIP trees haven't been merged forward in a while due to conflicts that I've not had time to resolve. Warner