From nobody Sat Dec 03 21:02:20 2022 X-Original-To: freebsd-git@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4NPj1v2cGtz4jQYV for ; Sat, 3 Dec 2022 21:02:43 +0000 (UTC) (envelope-from dch@skunkwerks.at) Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4NPj1t29PNz3FmV for ; Sat, 3 Dec 2022 21:02:42 +0000 (UTC) (envelope-from dch@skunkwerks.at) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=skunkwerks.at header.s=fm2 header.b=ctzz07iQ; dkim=pass header.d=messagingengine.com header.s=fm1 header.b=fJUoBUIn; spf=pass (mx1.freebsd.org: domain of dch@skunkwerks.at designates 66.111.4.25 as permitted sender) smtp.mailfrom=dch@skunkwerks.at; dmarc=none Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 2F3B45C0032 for ; Sat, 3 Dec 2022 16:02:41 -0500 (EST) Received: from imap44 ([10.202.2.94]) by compute1.internal (MEProxy); Sat, 03 Dec 2022 16:02:41 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=skunkwerks.at; h=cc:content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm2; t=1670101361; x=1670187761; bh=v7/BRJ6yov 6zLPxTgW1s64o2JgrOh0Tn0liYEP6SEf4=; b=ctzz07iQ+CiDpnin3hPALeorQf A2NMYuEg5F0NNSLmhKKYXy8P4rH1q0So5J5hN7dlKcteNuGdqnxhU3lM5FN6j+od 5mNnDKOBjkcFQhSkSgaHcR8sChlLzOg7AMVf0W/o1qLsrZRIAOXYoq0Opti+FY0l DQBCB/WqjOFXgEbJoT4oHztfHM25dq3cJjmLrK2xq8MUpbIJ7mXta8H1RGbBPNMC WyNtv7WAdwO2aNKB7NzYH+egesiOb7+X5I12morpAJCWqwI8oGcgP9PSfb8J7qoT YjJax+hgTuQ548mrPuPQWZm1qm8sDqkFv0U+c52gPjSz1kydVtcMeV294iKQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:date:feedback-id :feedback-id:from:from:in-reply-to:in-reply-to:message-id :mime-version:references:reply-to:sender:subject:subject:to:to :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; t=1670101361; x=1670187761; bh=v7/BRJ6yov6zLPxTgW1s64o2JgrO h0Tn0liYEP6SEf4=; b=fJUoBUInAD+mehQOFppTjhj/O947W/Bb9zox2VKdb6vV UCD7xNw91Tucl2AES/8icjjNWvJhM2fqUY4Y95wgyfc+ufN8cr2hAX46LmZnu05C xWge9YG6cHPbaASHtJlh3bh5BHyVtaVfuDSl1wlEnF6/lrEmeHK2rt7JoRVY966U 5LThTElD+D7WoRe9q4s1FZULvutLlXMwaIPp0N6/3RTb74hDzR30lxpLwFSC00lc 2mlfThdrHyGvqaqLucww9f10uiWKwwsOBIYlfgZ+rr2PynclGcOZlKQ/uO8N2Mlc UpWzsv3TtAqNPesVqbNyPDE3XzfgicJiOuox7R6dng== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedruddtgddugeeiucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefofgggkfgjfhffhffvufgtsehttd ertderredtnecuhfhrohhmpedfffgrvhgvucevohhtthhlvghhuhgsvghrfdcuoegutghh sehskhhunhhkfigvrhhkshdrrghtqeenucggtffrrghtthgvrhhnpedvteeljefhveetie egfeeggeetjeeiffdufedviedvgfetieehgfeugffghfekheenucffohhmrghinhepfhhr vggvsghsugdrohhrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrih hlfhhrohhmpegutghhsehskhhunhhkfigvrhhkshdrrght X-ME-Proxy: Feedback-ID: ic0e84090:Fastmail Received: by mailuser.nyi.internal (Postfix, from userid 501) id DB4B936A0075; Sat, 3 Dec 2022 16:02:40 -0500 (EST) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.7.0-alpha0-1115-g8b801eadce-fm-20221102.001-g8b801ead List-Id: Discussion of git use in the FreeBSD project List-Archive: https://lists.freebsd.org/archives/freebsd-git List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-git@freebsd.org Mime-Version: 1.0 Message-Id: In-Reply-To: References: Date: Sat, 03 Dec 2022 21:02:20 +0000 From: "Dave Cottlehuber" To: freebsd-git@freebsd.org Subject: Re: git-switch(1) then git-pull(1) Content-Type: text/plain X-Spamd-Result: default: False [-4.13 / 15.00]; DWL_DNSWL_LOW(-1.00)[messagingengine.com:dkim]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.94)[-0.938]; MV_CASE(0.50)[]; R_SPF_ALLOW(-0.20)[+ip4:66.111.4.25]; R_DKIM_ALLOW(-0.20)[skunkwerks.at:s=fm2,messagingengine.com:s=fm1]; MIME_GOOD(-0.10)[text/plain]; RWL_MAILSPIKE_GOOD(-0.10)[66.111.4.25:from]; RCVD_IN_DNSWL_LOW(-0.10)[66.111.4.25:from]; XM_UA_NO_VERSION(0.01)[]; ASN(0.00)[asn:19151, ipnet:66.111.4.0/24, country:US]; TO_DN_NONE(0.00)[]; RCVD_COUNT_THREE(0.00)[4]; PREVIOUSLY_DELIVERED(0.00)[freebsd-git@freebsd.org]; RCPT_COUNT_ONE(0.00)[1]; DMARC_NA(0.00)[skunkwerks.at]; RCVD_TLS_LAST(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; FREEFALL_USER(0.00)[dch]; MIME_TRACE(0.00)[0:+]; FROM_HAS_DN(0.00)[]; ARC_NA(0.00)[]; DKIM_TRACE(0.00)[skunkwerks.at:+,messagingengine.com:+]; FROM_EQ_ENVFROM(0.00)[]; MLMMJ_DEST(0.00)[freebsd-git@freebsd.org] X-Rspamd-Queue-Id: 4NPj1t29PNz3FmV X-Spamd-Bar: ---- X-ThisMailContainsUnwantedMimeParts: N On Sat, 3 Dec 2022, at 18:15, Nuno Teixeira wrote: > Really nice. > > I'm thinking on 3 trees for ports: > > - main (push) > - 2022Qn (cherry-pick, push) > - test (push to main when testing done) > > $ git clone https://git.freebsd.org/ports ports/main > $ cd ports/main > $ git worktree add ../2022Q4 -b 2022Q4 origin/2022Q4 > $ git worktree add ../test -b main origin/main > > My question is how do I push a commit from 'test' to 'main'? > > This sugestion is because I can have several ports in testing fase on > 'test' branch and choose a specific commit to push to 'main' (local > branch) and then do a final push. this would be similar to my setup, too. I have 3+ branches, as separate worktrees. - main -> dch/main - upstream -> freebsd-ports/main - quarterly -> freebsd-ports/2022Q4 or whatever my workflow is roughly as follows: ## do stuff, rebase it on upstream $ cd /usr/ports (now in dch/main) $ hack hack hack, git commit stuff on a pile of other crufty commits $ git fetch upstream/main && git branch --force upstream upstream/main $ git rebase --ignore-date --interactive upstream/main $ run some poudrieres, mmmm so good ## pull these over to upstream and push $ cd ~/ports/upstream $ git cherry-pick main main~1 main~2 $ git push -u upstream HEAD:main ## woops we should MFH these to quarterly $ cd ~/ports/quarterly $ git fetch upstream 2022Q4 && git reset --hard upstream/2022Q4 $ git cherry-pick -x main main~1 main~2 $ git push -u quarterly HEAD:main I think I got that more or less correct, it's a little confusing where all the different mains point to initially. Periodically, I need to adjust in .git/config where my "quarterly" points to, then the git reset again just works. A+ Dave