Thread (16 messages) 16 messages, 4 authors, 2016-06-15

Re: any way to apply tag across all branches in repository?

flat view

From: Chris Friesen <hidden>
Date: 2016-06-15 22:46:48

Linus Torvalds wrote:
On Tue, 19 May 2009, Chris Friesen wrote:
quoted
The brute-force way to do this would be to manually loop through each branch
and create a tag of the form "$branch_$version" to ensure unique tags.  But I was
hoping there was a more elegant way.
Well, I would suggest that you do it fundamentally differently.

Instead of tagging each build, I would suggest just associating each build 
with the commit SHA1 of the time. That's what Linux does (if you enable 
CONFIG_LOCALVERSION_AUTO), and it's _way_ superior to lots of crazy tags.

So for example, I can do

	[torvalds@nehalem ~]$ uname -r
	2.6.30-rc6-00302-g72357d5-dirty

and it tells me exactly what kernel version I'm running (well, the "dirty"
part means that it's not exact and has some additional patches that 
weren't committed, but that's as close as you can get). It's very useful.
Agreed.  The project in question actually involves (among other things)
a linux kernel build, so we will be making use of this to work backwards
from the running kernel to the commit used to generate it.

However, we also want to be able to work in the other direction--given a
known-buggy kernel commit, which shipped versions of the product contain
the buggy code?  We do in-the-field upgrades, and different sites may be
running different versions, so it's important to be able to easily
determine which sites are currently running the buggy code so that we
can get them upgraded.  We know which sites are running which versions,
so it is useful to tag the repository branches with that version number.
Trust me, something like the above is _much_ better than tagging each 
branchthat you build. Partly because it means that you can do the builds 
in a distributed manner, and they'll all get the version built in, rather 
than having to rely on everybody tagging everything and then trying to 
match up the tag to some random binary.
The tagging would be done only by the "official" build process (which
pulls from an "official" repository), not by each designer.  Typically
the official builds would be done weekly, more frequently if requested.

Chris
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help