2009/6/17 Michael G Schwern <schw...@pobox.com>:
> Eric Wilhelm wrote:
>> # from Michael G Schwern
>> # on Saturday 13 June 2009 21:33:
>>
>>> +MAX_INT
>>>
>>> I can do it, I've done it often enough and I think the MB repo is
>>> pretty simple
>>
>> My concern is still for the release process.  I need to be able to
>> easily pull a sequential log of commit messages since the last release
>> tag
>
> List all tags:
> git tag -l

-l is optional.

>
> Get the latest tag:
> git describe --abbrev=0 --tags
>
> Show all changes from a $tag to now:
> git log $tag..HEAD

add -p for the diff.

>
>
>> (to check/update the Changes file) and the release tool needs to
>> know how to:
>>
>>   1.  verify that the working directory is current *and* committed
>
> svn up                  git pull
>
> svn st                  git status (returns non-zero if nothing to commit)

Note that this wont show unadded files. You need to be more creative
then, and its actually a pita, unless you have a trick. In which case
share. :-)

> Check that you're on the master branch:
> `git describe --all` eq "heads/master\n"

Neat. Didnt know that one. :-)

Although it assumes that the master branch is master, which it may not
be, and does not have to be.

>
>
>>   2.  create a tag
>
> svn cp repo/trunk repo/tags/$tag        git tag $tag -m 'Optional message'

Er, be careful here. if you omit the -m then you create a lite tag not
meant for sharing.

If you want to create a real tag without -m you need the -a (-m implies -a)

>
>
>>   (and all of this needs to be atomically/cleanly sync'd to the "global"
>>   repository before sending a tarball to the CPAN)
>
> git push origin

git push, dont make assumptions about what the upstream repo is called.


Cheers,
yves

-- 
perl -Mre=debug -e "/just|another|perl|hacker/"

Reply via email to