You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
2.0 KiB
52 lines
2.0 KiB
Date: Fri, 12 Aug 2005 22:39:48 -0700 (PDT) |
|
From: Linus Torvalds <torvalds@osdl.org> |
|
To: Dave Jones <davej@redhat.com> |
|
cc: git@vger.kernel.org |
|
Subject: Re: Fwd: Re: git checkout -f branch doesn't remove extra files |
|
Abstract: In this article, Linus talks about building a tarball, |
|
incremental patch, and ChangeLog, given a base release and two |
|
rc releases, following the convention of giving the patch from |
|
the base release and the latest rc, with ChangeLog between the |
|
last rc and the latest rc. |
|
|
|
On Sat, 13 Aug 2005, Dave Jones wrote: |
|
> |
|
> > Git actually has a _lot_ of nifty tools. I didn't realize that people |
|
> > didn't know about such basic stuff as "git-tar-tree" and "git-ls-files". |
|
> |
|
> Maybe its because things are moving so fast :) Or maybe I just wasn't |
|
> paying attention on that day. (I even read the git changes via RSS, |
|
> so I should have no excuse). |
|
|
|
Well, git-tar-tree has been there since late April - it's actually one of |
|
those really early commands. I'm pretty sure the RSS feed came later ;) |
|
|
|
I use it all the time in doing releases, it's a lot faster than creating a |
|
tar tree by reading the filesystem (even if you don't have to check things |
|
out). A hidden pearl. |
|
|
|
This is my crappy "release-script": |
|
|
|
[torvalds@g5 ~]$ cat bin/release-script |
|
#!/bin/sh |
|
stable="$1" |
|
last="$2" |
|
new="$3" |
|
echo "# git-tag-script v$new" |
|
echo "git-tar-tree v$new linux-$new | gzip -9 > ../linux-$new.tar.gz" |
|
echo "git-diff-tree -p v$stable v$new | gzip -9 > ../patch-$new.gz" |
|
echo "git-rev-list --pretty v$new ^v$last > ../ChangeLog-$new" |
|
echo "git-rev-list --pretty=short v$new ^v$last | git-shortlog > ../ShortLog" |
|
echo "git-diff-tree -p v$last v$new | git-apply --stat > ../diffstat-$new" |
|
|
|
and when I want to do a new kernel release I literally first tag it, and |
|
then do |
|
|
|
release-script 2.6.12 2.6.13-rc6 2.6.13-rc7 |
|
|
|
and check that things look sane, and then just cut-and-paste the commands. |
|
|
|
Yeah, it's stupid. |
|
|
|
Linus |
|
|
|
|