From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Yuri Khan Newsgroups: gmane.emacs.devel Subject: Re: master bdda935 2/2: Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs Date: Wed, 19 Aug 2020 01:47:02 +0700 Message-ID: References: <20200816182558.16607.52991@vcs0.savannah.gnu.org> <20200816182601.16F2A209AC@vcs0.savannah.gnu.org> <87imdisam3.fsf@gnus.org> <87d03ptg3c.fsf@igel.home> <871rk5t4vn.fsf@igel.home> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="37346"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Robert Pluim , Andreas Schwab , Lars Ingebrigtsen , Emacs developers To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Aug 18 20:48:30 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1k86es-0009a4-7J for ged-emacs-devel@m.gmane-mx.org; Tue, 18 Aug 2020 20:48:30 +0200 Original-Received: from localhost ([::1]:32768 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1k86er-0002E1-8B for ged-emacs-devel@m.gmane-mx.org; Tue, 18 Aug 2020 14:48:29 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:49840) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1k86di-0001DR-41 for emacs-devel@gnu.org; Tue, 18 Aug 2020 14:47:19 -0400 Original-Received: from mail-ua1-x930.google.com ([2607:f8b0:4864:20::930]:33519) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1k86df-0000dZ-SU for emacs-devel@gnu.org; Tue, 18 Aug 2020 14:47:17 -0400 Original-Received: by mail-ua1-x930.google.com with SMTP id q68so6131747uaq.0 for ; Tue, 18 Aug 2020 11:47:15 -0700 (PDT) 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:content-transfer-encoding; bh=ulYF4E2JW9Wu3gJBPtljWHHaa6y2Bk9SaQ5HWzsTg/U=; b=dOgyTGCoJIHestIRhqODzXL+zZQAMVaHcLfoylZitnjG50zHmw1e5/lssTr5lPWMsi ThgkKh623XKV2pvVOsErmA0f7jIoGB0Lic9KEJHkIX+sEOkDDsnlBJS5Q8PuKEZNCJTE 9ZwpIhYC2Q65Mherh9t8YaBKb9phP2V6+XF5vLYR2avShYh+c4ScYoJQxdTsSINKQO+X kVcb1hbTxGzTYrK2nttoRs82FOwuhJfdVV6k+WluIRh4znwXD1UGXbKkk33w2GcnlrmI xp/uwSc9Z15irsFa9cYtKmoE5iLjo6ODTYHzND1aUpfs2Clt6Mt1jDSWPQtGvSt6IPhJ +gvw== 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:content-transfer-encoding; bh=ulYF4E2JW9Wu3gJBPtljWHHaa6y2Bk9SaQ5HWzsTg/U=; b=tXfZQMj4SuEgL6lAs/laEBsuKObgZHZyUZQJqhh0zITHwBqMvYi1dqvO5e7WQNgVG9 u+lh0z3eA5K13iLNqQDkjrULxYVqGDDSbSSXDBYnM2Esu2t0gEPWSnlWnHCr+PUKoBJ6 jbg2X5od+kYwOaWq6MoAqbuPD8dbVjx+kqrRwBUNJo7KBk1J0FWG9N1Mei+hJJEn9PZM 3ijTjFIllBOPfCNKQkxcmUDDjpATdkc0MyjIe2nuiCIWYdB/3QEtcbEsS94dKpbQey3a KdrXbxJuZKeK7V0EPSXHFCIO7M5DD8dHmXPHR+WS+IQvjmPsKsj5kvdE0M5KIQvrmgDJ /UAQ== X-Gm-Message-State: AOAM531o2fnn6x4bwni99f07oV3YIskxoQf+4F4HC4S4jqrT0ZK60HsF 6n14LDHxHdu0zTG5U1arAPMaooZw8T1AHHOZ8bM= X-Google-Smtp-Source: ABdhPJzsZADnDs8wykNO6qPeaZSPVVdiX9CKC2vkFjQnXpeXeP7wcS+h7R6HnozDVokmloubFhyPV0Kg60K21HfJQiU= X-Received: by 2002:ab0:a8a:: with SMTP id d10mr11829462uak.41.1597776434319; Tue, 18 Aug 2020 11:47:14 -0700 (PDT) In-Reply-To: Received-SPF: pass client-ip=2607:f8b0:4864:20::930; envelope-from=yurivkhan@gmail.com; helo=mail-ua1-x930.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:253969 Archived-At: On Tue, 18 Aug 2020 at 23:48, Stefan Monnier wro= te: > The question then becomes: how does Magit do that? (or does it come > with the same caveats that I mentioned regarding execution time, > treatment of non-committed changes, the set of files whose mtime is > affected, ...) I think it checks out the other branch, then merges the current branch, then does whatever cleanup necessary. (That does not include restoring mtimes and recovering spent time.) Generally speaking, merging while the working copy is dirty is not recommended, the reason being, if the merge results in conflicts, you=E2=80=99d probably like to be able to use the working copy to resolve them. Having uncommitted changes there makes things confusing, especially if they themselves conflict with the changes in any of the branches being merged. Mtime probably changes for every file that changes during the intermediate checkout and the subsequent merge. Raymond Chen of Microsoft once described a technique to craft commits in a Git repository without ever touching the working copy, because that would change the mtimes of some files and subsequently trigger a rebuild, and/or be slow due to updating the working copy: 1. [Building a commit manually out of a tree](https://devblogs.microsoft.com/oldnewthing/20190506-00/?p=3D102478) 2. [Building a merge commit manually out of a tree](https://devblogs.microsoft.com/oldnewthing/20190507-00/?p=3D102480) That assumes that the hard part of the merge (i.e. actual merge and conflict resolution) is already done and the result recorded in a tree somewhere in Git, though.