Re: meaning of "-g" in git-describe output

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Wed, 17 Mar 2010, Jay Soffian wrote:
> 
> My guess, from 908e531 (Add a "git-describe" command, 2005-12-24), is
> that it's short for "git":

Indeed. I actually wanted to make it possible to use other SCM's, even if 
it's stupid. And git is not the only one that uses hashes for versioning, 
so the "g" prefix is there to allow others that use -hg or monotone or 
similar to work.

For the kernel, if you use mercurial, the kernel version prefix will be 
"hg", for example. For SVN, it will be "svn" (but the numbers won't be a 
hex number, they'll be the SVN revno). See 'scripts/setlocalversion' in 
the kernel tree for an example.

So 'git describe' tries to match this kind of "multi-SCM model", where you 
can describe versions of your software in an environment where people may 
well use different SCMs.

Of course, if you use "git describe", you'll always get the "g" thing, and 
it is entirely redundant within the settign of just git. But in a bigger 
setting, the point is that I can do this:

	[torvalds@i5 linux]$ git describe; uname -r
	v2.6.34-rc1-997-ga3d3203
	2.6.34-rc1-00959-gbca14dd

and they have basically the same format (not 100% identical, but the 
"-g<sha1>" part is similar - the SHA1's obviously don't match in this 
case, because the kernel I'm running is ~40 commits away from my current 
tip of tree, but you can see the pattern).

			Linus
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]