public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jakub Jelinek <jakub@redhat.com>
To: Florian Weimer <fweimer@redhat.com>
Cc: "Andrew Pinski" <pinskia@gmail.com>,
	"Segher Boessenkool" <segher@kernel.crashing.org>,
	"Marek Polacek" <polacek@redhat.com>,
	"Martin Liška" <mliska@suse.cz>,
	"Joseph Myers" <joseph@codesourcery.com>,
	"Maxim Kuvyrkov" <maxim.kuvyrkov@linaro.org>,
	"GCC Patches" <gcc-patches@gcc.gnu.org>,
	"Jason Merrill" <jason@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Eric Raymond" <esr@thyrsus.com>
Subject: Re: [Contrib PATCH] Add scripts to convert GCC repo from SVN to Git
Date: Mon, 20 May 2019 14:25:00 -0000	[thread overview]
Message-ID: <20190520142455.GT19695@tucnak> (raw)
In-Reply-To: <871s0tjkks.fsf@oldenburg2.str.redhat.com>

On Mon, May 20, 2019 at 03:56:35PM +0200, Florian Weimer wrote:
> * Andrew Pinski:
> 
> > On Sun, May 19, 2019 at 12:54 PM Segher Boessenkool
> > <segher@kernel.crashing.org> wrote:
> 
> >> Git can bisect automatically just fine, there is no upside to doing things
> >> manually.  In git there are various handy ways of referring to commits; you
> >> can say  master@{3 days ago}  for example, or zut@{31}  to get the 31st
> >> commit back on branch "zut", etc.  See "man gitrevisions".
> >
> > Well one thing is if you have prebuilt cc1/cc1plus.  So it is not
> > really doing a manual bisect per-say but rather it is doing a manual
> > bisect using prebuilt binaries and knowing which one comes before
> > which one.
> 
> If GCC policy is to reject merge commits, a command similar to
> “git log --pretty=oneline | wc -l” gives something that is very
> much like a Subversion revision number, in the sense that it matches
> the commit ordering and that the assigned numbers remain stable
> over time.

That is way too slow for our purposes, note we have at least 150000 trunk
commits at least, git log --pretty=oneline | wc -l takes on my box more than
1.4 seconds.

So far the best suggestion I was given for this was:
> so, if we have tags like r163 for 163000'th commit then git describe --all --match 'r[0-9]*' whatever | sed 's/^r\([0-9]\)*-\([0-9]\)*-.*$/\1\2/'
> would give us the r163147 (except it doesn't handle the r163000 commit or < 100 commits after it, to be fixed)
matz> yeah.  With the other direction then being as discussed above (limiting the git log revision to just the couple thousands in range).  One thing to consider: having a zillion tags locally can make other operations slow (as the mapping from SHA1 to tag is slow), so if really using rXXX tags it should probably be a larger range than just 1000 revisions.

Thus perhaps tag in a post-commit hook every 5000th commit and handle the
rest in some git alias command or script that.  We need a quick way to map
between these revisions and hashes bidirectionally.
Unfortunately, the above is just a per-branch number rather than branch
number common to trunk and official release branches.

	Jakub

  parent reply	other threads:[~2019-05-20 14:25 UTC|newest]

Thread overview: 103+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-14 16:11 Maxim Kuvyrkov
2019-05-14 21:20 ` Segher Boessenkool
2019-05-15  8:34   ` Maxim Kuvyrkov
2019-05-15 18:47     ` Segher Boessenkool
2019-05-16  9:44       ` Maxim Kuvyrkov
2019-05-15 11:19 ` Richard Biener
2019-05-15 12:08   ` Maxim Kuvyrkov
2019-05-15 18:42     ` Eric Gallager
2019-05-16  0:33       ` Paul Koning
2019-05-16  9:53         ` Maxim Kuvyrkov
2019-05-16 16:22   ` Jeff Law
2019-05-16 16:40     ` Maxim Kuvyrkov
2019-05-16 18:36       ` Ramana Radhakrishnan
2019-05-16 19:07         ` Jeff Law
2019-05-16 22:04           ` Jonathan Wakely
2019-05-17 11:33             ` Martin Liška
2019-05-16 23:54       ` Joseph Myers
2019-05-17  8:19         ` Richard Sandiford
2019-05-17 19:51           ` Segher Boessenkool
2019-05-17 20:59             ` Steve Ellcey
2019-05-17 21:23             ` Jason Merrill
2019-05-20 22:42           ` Joseph Myers
2019-05-21 14:24             ` Richard Earnshaw (lists)
2019-05-21 14:45               ` Jeff Law
2019-05-21 15:02                 ` Richard Earnshaw (lists)
2019-05-21 16:44             ` Segher Boessenkool
2019-05-23 22:33               ` Joseph Myers
2019-05-24  8:58                 ` Segher Boessenkool
2019-05-24 12:02                   ` Florian Weimer
2019-05-29  1:50                   ` Joseph Myers
2019-05-29 13:04                     ` Segher Boessenkool
2019-05-31  0:16                       ` Joseph Myers
2019-06-02 23:13                         ` Segher Boessenkool
2019-06-03 22:33                           ` Joseph Myers
2019-06-03 22:49                             ` Segher Boessenkool
2019-06-05 18:04                             ` Jason Merrill
2019-06-06 10:14                               ` Richard Earnshaw (lists)
2019-06-06 23:41                                 ` Joseph Myers
2019-06-06 23:50                                   ` Ian Lance Taylor
2019-06-07  9:32                                     ` Richard Earnshaw (lists)
2019-06-06 23:36                               ` Joseph Myers
2019-07-22  9:05                                 ` Maxim Kuvyrkov
2019-05-16 23:06 ` Joseph Myers
2019-05-17 12:22   ` Martin Liška
2019-05-17 12:39     ` Jakub Jelinek
2019-05-19  7:35       ` Martin Liška
2019-05-19  8:11         ` Segher Boessenkool
2019-05-19 19:21           ` Marek Polacek
2019-05-19 19:46             ` Andreas Schwab
2019-05-19 19:54             ` Segher Boessenkool
2019-05-19 20:01               ` Andrew Pinski
2019-05-19 20:06                 ` Marek Polacek
2019-05-20  7:29                   ` Martin Liška
2019-05-20 13:56                 ` Florian Weimer
2019-05-20 14:18                   ` Segher Boessenkool
2019-05-20 14:25                   ` Jakub Jelinek [this message]
2019-05-20 14:26                   ` Andreas Schwab
2019-05-20 14:29                     ` Jakub Jelinek
2019-05-20 14:36                       ` Andreas Schwab
2019-05-20 15:04                       ` Segher Boessenkool
2019-05-17 14:59     ` Maxim Kuvyrkov
2019-05-19  7:09       ` Martin Liška
2019-05-17 14:56   ` Maxim Kuvyrkov
2019-05-17 13:07 ` Jason Merrill
2019-05-17 15:08   ` Maxim Kuvyrkov
2019-05-20 22:48   ` Joseph Myers
2019-05-28 10:44 ` Maxim Kuvyrkov
2019-07-16 10:21   ` Maxim Kuvyrkov
2019-07-16 12:40     ` Jason Merrill
2019-07-16 14:27       ` Maxim Kuvyrkov
2019-07-20 11:24         ` Maxim Kuvyrkov
2019-07-22  9:35         ` Maxim Kuvyrkov
2019-08-01 20:43           ` Jason Merrill
2019-08-02  8:41             ` Maxim Kuvyrkov
2019-08-02  8:57               ` Richard Biener
2019-08-02 10:27               ` Martin Liška
2019-08-02 10:54                 ` Maxim Kuvyrkov
2019-08-02 11:01                   ` Martin Liška
2019-08-02 11:06                     ` Richard Biener
2019-08-02 11:35                       ` Martin Liška
2019-08-02 22:31                         ` Jason Merrill
2019-08-05 13:20                           ` Martin Liška
2019-08-05 15:20                             ` Monotonically increasing counter (was Re: [Contrib PATCH] Add scripts to convert GCC repo from SVN to Git) Jason Merrill
2019-08-05 15:34                               ` Jakub Jelinek
2019-08-05 15:45                                 ` Richard Earnshaw (lists)
2019-08-05 18:22                                 ` Jason Merrill
2019-08-14 18:49                                   ` Jason Merrill
2019-09-19 19:29                                     ` Jason Merrill
2019-09-21 18:18                                       ` Segher Boessenkool
2019-09-21 20:31                                         ` Nicholas Krause
2019-09-21 21:32                                         ` Jason Merrill
2019-09-22  0:20                                           ` Segher Boessenkool
2019-08-02 14:35                       ` [Contrib PATCH] Add scripts to convert GCC repo from SVN to Git Segher Boessenkool
2019-08-02 14:55                       ` Maxim Kuvyrkov
2019-08-05 16:43                       ` Mike Stump
2019-08-05  8:24               ` Maxim Kuvyrkov
2019-08-06 11:16                 ` Maxim Kuvyrkov
2019-08-23  8:27                   ` Maxim Kuvyrkov
2019-08-23 22:08                     ` Joseph Myers
2019-09-13  7:20                       ` Maxim Kuvyrkov
2019-08-02  8:35           ` Maxim Kuvyrkov
2019-08-02 14:14             ` Maxim Kuvyrkov
2019-08-02 15:47               ` Segher Boessenkool

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190520142455.GT19695@tucnak \
    --to=jakub@redhat.com \
    --cc=esr@thyrsus.com \
    --cc=fweimer@redhat.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=jason@redhat.com \
    --cc=joseph@codesourcery.com \
    --cc=maxim.kuvyrkov@linaro.org \
    --cc=mliska@suse.cz \
    --cc=pbonzini@redhat.com \
    --cc=pinskia@gmail.com \
    --cc=polacek@redhat.com \
    --cc=segher@kernel.crashing.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).