Re: `git describe` in an export-subst format string?

2013-04-28 Thread Junio C Hamano
Junio C Hamano  writes:

> John Gallagher  writes:
>
>> The actual thing I want to do is
>> something like this:
>>
>>   static const char *project_version = "$Format:...$";
>>
>> where "..." is something that `git archive` will replace with the
>> output of `git describe`,...
>
> You need to find an appropriate pair of placeholders that can
> represent "git describe $it" and "git describe --contains $it".
>
> I am tempted to suggest a more generalized way that is not limited
> to describe at all, perhaps like this:
>
> $ git show --format='%x( git describe %H )'
> $ git show --format='%x( git describe --contains %H )'

Just in case anybody takes it too seriously, this particular
implementaiton will never be acceptable at least for use in
"$Format:" of export-subst.

I am "tempted to" suggest, but am not crazy enough to actually doing
so ;-).
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: `git describe` in an export-subst format string?

2013-04-28 Thread Junio C Hamano
John Gallagher  writes:

> The actual thing I want to do is
> something like this:
>
>   static const char *project_version = "$Format:...$";
>
> where "..." is something that `git archive` will replace with the
> output of `git describe`,...

You need to find an appropriate pair of placeholders that can
represent "git describe $it" and "git describe --contains $it".

I am tempted to suggest a more generalized way that is not limited
to describe at all, perhaps like this:

$ git show --format='%x( git describe %H )'
$ git show --format='%x( git describe --contains %H )'

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


`git describe` in an export-subst format string?

2013-04-28 Thread John Gallagher
I originally posted this as a question about getting `git log` to
output the same thing that `git describe` does to the git-users
mailing list, and was directed here. The actual thing I want to do is
something like this:

  static const char *project_version = "$Format:...$";

where "..." is something that `git archive` will replace with the
output of `git describe`, given the file has the export-subst
property, possibly with arguments to git describe (--tags, --all,
etc.). In a normal build I can do this with the build system just
calling git directly, but if I'm archiving a tarball off there doesn't
seem to be a way to do this (other than manually replacing the format
string myself as some secondary step).

Does this seem like a reasonable thing to do, or am I overlooking a
better alternative? If this is something that seems reasonable, I
wouldn't mind taking a stab at implementing it. If that sounds okay,
could make sure I'm pointed in the right direction? E.g., should `git
log --format=...` have options that spit out `git describe` strings
since that's what export-subst currently uses, or should there be a
separate $Format:...$ option that runs git describe?

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