From: "Randy.Dunlap" <rddunlap@osdl.org>
To: Petr Baudis <pasky@ucw.cz>
Cc: torvalds@osdl.org, ross@jose.lug.udel.edu, linux-kernel@vger.kernel.org
Subject: Re: Kernel SCM saga..
Date: Sat, 9 Apr 2005 00:08:59 -0700 [thread overview]
Message-ID: <20050409000859.73bf221f.rddunlap@osdl.org> (raw)
In-Reply-To: <20050409025357.GA9052@pasky.ji.cz>
[-- Attachment #1: Type: text/plain, Size: 2107 bytes --]
On Sat, 9 Apr 2005 04:53:57 +0200 Petr Baudis wrote:
| Hello,
|
| Dear diary, on Fri, Apr 08, 2005 at 05:50:21PM CEST, I got a letter
| where Linus Torvalds <torvalds@osdl.org> told me that...
| >
| >
| > On Fri, 8 Apr 2005 ross@jose.lug.udel.edu wrote:
| > >
| > > Here's a partial solution. It does depend on a modified version of
| > > cat-file that behaves like cat. I found it easier to have cat-file
| > > just dump the object indicated on stdout. Trivial patch for that is included.
| >
| > Your trivial patch is trivially incorrect, though. First off, some files
| > may be binary (and definitely are - the "tree" type object contains
| > pathnames, and in order to avoid having to worry about special characters
| > they are NUL-terminated), and your modified "cat-file" breaks that.
| >
| > Secondly, it doesn't check or print the tag.
|
| FWIW, I made few small fixes (to prevent some trivial usage errors to
| cause cache corruption) and added scripts gitcommit.sh, gitadd.sh and
| gitlog.sh - heavily inspired by what already went through the mailing
| list. Everything is available at http://pasky.or.cz/~pasky/dev/git/
| (including .dircache, even though it isn't shown in the index), the
| cumulative patch can be found below. The scripts aim to provide some
| (obviously very interim) more high-level interface for git.
|
| I'm now working on tree-diff.c which will (surprise!) produce a diff
| of two trees (I'll finish it after I get some sleep, though), and then I
| will probably do some dwimmy gitdiff.sh wrapper for tree-diff and
| show-diff. At that point I might get my hand on some pull more kind to
| local changes.
Hi,
I'll look at your scripts this weekend. I've also been
working on some, but mine are a bit more experimental (cruder)
than yours are. Anyway, here they are (attached) -- also
available at http://developer.osdl.org/rddunlap/git/
gitin : checkin/commit
gitwhat sha1 : what is that sha1 file (type and contents if blob or commit)
gitlist (blob, commit, tree, or all) :
list all objects with type (commit, tree, blob, or all)
---
~Randy
[-- Attachment #2: gitin --]
[-- Type: application/octet-stream, Size: 742 bytes --]
#! /bin/sh
# gitin: checkin for git files
# grep show-diff for +++ => error, print 'run update-cache <filenames>', exit
# (better would be an error exit code)
# write-tree > current_tree_object
# print 'enter commit message:'
# commit-tree `cat current_tree_object` -p `cat .dircache/HEAD` > current_commit_object
# update .dircache/HEAD with current_commit_object
diffs=`show-diff | grep "+++"`
#echo diffs=/$diffs/
if [ x"$diffs" != x ]; then
echo "run update-cache <filenames>"
exit
fi
tree_object=`write-tree`
#echo tree_obj=/$tree_object/
head=`cat .dircache/HEAD`
echo "enter commit message: (end with ^D)"
commit_object=`commit-tree $tree_object -p $head`
#echo commit_obj=/$commit_object/
echo $commit_object > .dircache/HEAD
[-- Attachment #3: gitlist --]
[-- Type: application/octet-stream, Size: 580 bytes --]
#! /bin/sh
# gitlist: list some git objects/types
# (by selected target type: blob, tree, commit, all)
target=$1
if [ -z "$target" ]; then
echo "usage: gitlist type {blob, tree, commit, or all}"
exit 1
fi
subdir=.dircache/objects/
for high in 0 1 2 3 4 5 6 7 8 9 a b c d e f ; do
for low in 0 1 2 3 4 5 6 7 8 9 a b c d e f ; do
top=$high$low
for f in $subdir/$top/* ; do
if [ ! -r $f ]; then
continue
fi
base=`basename $f`
type=`cat-file -t $top$base`
if [ $target == "all" -o $target == $type ]; then
echo $top$base : $type
fi
done
done
done
[-- Attachment #4: gitwhat --]
[-- Type: application/octet-stream, Size: 533 bytes --]
#! /bin/sh
# gitwhat: what is that file
sha1=$1
if [ -z $sha1 ]; then
echo "usage: gitwhat sha1"
exit 1
fi
what=`cat-file -t $sha1`
if [ -z "$what" ]; then
exit 1
fi
echo "type is: $what"
topdir=${sha1:0:2}
last=${sha1:2}
file=.dircache/objects/$topdir/$last
if [ -z $PAGER ]; then
pager=more
else
pager=$PAGER
fi
case $what in
blob)
#head -10 $file
#$pager $file
cat-file blob $sha1 | $pager
;;
tree)
echo "cannot print binary tree"
#cat-file tree $sha1 | $pager
;;
commit)
cat-file commit $sha1 | $pager
;;
esac
next prev parent reply other threads:[~2005-04-09 7:10 UTC|newest]
Thread overview: 201+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-04-06 15:42 Kernel SCM saga Linus Torvalds
2005-04-06 16:00 ` Greg KH
2005-04-07 16:40 ` Rik van Riel
2005-04-08 0:53 ` Jesse Barnes
2005-04-06 16:09 ` Daniel Phillips
2005-04-06 19:07 ` Jon Smirl
2005-04-06 19:24 ` Matan Peled
2005-04-06 19:49 ` Jon Smirl
2005-04-06 20:34 ` Hua Zhong
2005-04-07 1:31 ` Christoph Lameter
2005-04-06 19:39 ` Paul P Komkoff Jr
2005-04-07 1:40 ` Martin Pool
2005-04-07 1:47 ` Jeff Garzik
2005-04-07 2:26 ` Martin Pool
2005-04-07 2:32 ` David Lang
2005-04-07 5:38 ` Martin Pool
2005-04-07 23:27 ` Linus Torvalds
2005-04-08 5:56 ` Martin Pool
2005-04-08 6:41 ` Linus Torvalds
2005-04-08 8:38 ` Andrea Arcangeli
2005-04-08 23:38 ` Daniel Phillips
2005-04-09 2:54 ` Andrea Arcangeli
2005-04-09 0:12 ` Linus Torvalds
2005-04-09 2:27 ` Andrea Arcangeli
2005-04-09 2:32 ` David Lang
2005-04-09 3:08 ` Brian Gerst
2005-04-09 3:15 ` Andrea Arcangeli
2005-04-09 5:45 ` Linus Torvalds
2005-04-09 22:55 ` David S. Miller
2005-04-09 23:13 ` Linus Torvalds
2005-04-10 0:14 ` Chris Wedgwood
2005-04-10 1:56 ` Paul Jackson
2005-04-10 12:03 ` Ingo Molnar
2005-04-10 17:38 ` Paul Jackson
2005-04-10 17:46 ` Ingo Molnar
2005-04-10 17:56 ` Paul Jackson
2005-04-10 0:22 ` Paul Jackson
2005-04-10 11:33 ` Ingo Molnar
2005-04-10 17:55 ` Matthias Andree
2005-04-09 16:33 ` Roman Zippel
2005-04-09 23:31 ` Tupshin Harper
2005-04-10 17:24 ` Code snippet to reconstruct ancestry graph from bk repo Paul P Komkoff Jr
2005-04-10 18:19 ` Roman Zippel
2005-04-08 16:46 ` Kernel SCM saga Catalin Marinas
2005-04-07 8:14 ` Magnus Damm
2005-04-07 7:53 ` Zwane Mwaikambo
2005-04-07 3:35 ` Daniel Phillips
2005-04-07 15:08 ` Daniel Phillips
2005-04-07 6:36 ` bert hubert
2005-04-06 23:22 ` Jon Masters
2005-04-07 6:51 ` Paul Mackerras
2005-04-07 7:48 ` Arjan van de Ven
2005-04-07 15:10 ` Linus Torvalds
2005-04-07 17:00 ` Daniel Phillips
2005-04-07 17:38 ` Linus Torvalds
2005-04-07 17:47 ` Chris Wedgwood
2005-04-07 18:06 ` Magnus Damm
2005-04-07 18:36 ` Daniel Phillips
2005-04-08 3:35 ` Jeff Garzik
2005-04-07 19:56 ` Sam Ravnborg
2005-04-07 23:21 ` Dave Airlie
2005-04-07 7:18 ` David Woodhouse
2005-04-07 8:50 ` Andrew Morton
2005-04-07 9:20 ` Paul Mackerras
2005-04-07 9:46 ` Andrew Morton
2005-04-07 11:17 ` Paul Mackerras
2005-04-07 10:41 ` Geert Uytterhoeven
2005-04-07 9:25 ` David Woodhouse
2005-04-07 9:49 ` Andrew Morton
2005-04-07 9:55 ` Russell King
2005-04-07 10:11 ` David Woodhouse
2005-04-07 9:40 ` David Vrabel
2005-04-07 9:24 ` Sergei Organov
2005-04-07 10:30 ` Matthias Andree
2005-04-07 10:54 ` Andrew Walrond
2005-04-09 16:17 ` David Roundy
2005-04-10 9:24 ` Giuseppe Bilotta
2005-04-10 13:51 ` David Roundy
2005-04-07 15:32 ` Linus Torvalds
2005-04-07 17:09 ` Daniel Phillips
2005-04-07 17:10 ` Al Viro
2005-04-07 17:47 ` Linus Torvalds
2005-04-07 18:04 ` Jörn Engel
2005-04-07 18:27 ` Daniel Phillips
2005-04-07 20:54 ` Arjan van de Ven
2005-04-08 3:41 ` Jeff Garzik
2005-04-07 17:52 ` Bartlomiej Zolnierkiewicz
2005-04-07 17:54 ` Daniel Phillips
2005-04-07 18:13 ` Dmitry Yusupov
2005-04-07 18:29 ` Daniel Phillips
2005-04-10 22:33 ` Troy Benjegerdes
2005-04-11 0:00 ` Christian Parpart
2005-04-08 17:24 ` Jon Masters
2005-04-08 22:05 ` Daniel Phillips
2005-04-08 22:52 ` Roman Zippel
2005-04-08 23:46 ` Tupshin Harper
2005-04-09 1:00 ` Roman Zippel
2005-04-09 1:23 ` Tupshin Harper
2005-04-09 16:52 ` Eric D. Mudama
2005-04-09 17:40 ` Roman Zippel
2005-04-09 18:56 ` Ray Lee
2005-04-07 7:44 ` Jan Hudec
2005-04-08 6:14 ` Matthias Urlichs
2005-04-09 1:01 ` Marcin Dalecki
2005-04-09 8:32 ` Jan Hudec
2005-04-11 2:26 ` Miles Bader
2005-04-11 2:56 ` Marcin Dalecki
2005-04-11 6:36 ` Jan Hudec
2005-04-07 10:56 ` Andrew Walrond
2005-04-08 0:57 ` Ian Wienand
2005-04-08 4:13 ` Chris Wedgwood
2005-04-08 4:42 ` Linus Torvalds
2005-04-08 5:04 ` Chris Wedgwood
2005-04-08 5:14 ` H. Peter Anvin
2005-04-08 7:05 ` Rogan Dawes
2005-04-08 7:21 ` Daniel Phillips
2005-04-08 7:49 ` H. Peter Anvin
2005-04-08 7:14 ` Andrea Arcangeli
2005-04-08 12:02 ` Matthias Andree
2005-04-08 12:21 ` Florian Weimer
2005-04-08 14:26 ` Linus Torvalds
2005-04-08 16:15 ` Matthias-Christian Ott
2005-04-08 17:14 ` Linus Torvalds
2005-04-08 17:15 ` Chris Wedgwood
2005-04-08 17:46 ` Linus Torvalds
2005-04-08 18:05 ` Chris Wedgwood
2005-04-08 19:03 ` Linus Torvalds
2005-04-08 19:16 ` Chris Wedgwood
2005-04-08 19:38 ` Florian Weimer
2005-04-08 19:48 ` Chris Wedgwood
2005-04-08 19:39 ` Linus Torvalds
2005-04-08 20:11 ` Uncached stat performace [ Was: Re: Kernel SCM saga.. ] Ragnar Kjørstad
2005-04-08 20:14 ` Chris Wedgwood
2005-04-08 20:50 ` Kernel SCM saga Luck, Tony
2005-04-08 21:27 ` Linus Torvalds
2005-04-09 17:14 ` Roman Zippel
2005-04-09 7:20 ` Willy Tarreau
2005-04-09 15:15 ` Paul Jackson
2005-04-08 17:25 ` Matthias-Christian Ott
2005-04-08 18:14 ` Linus Torvalds
2005-04-08 18:28 ` Jon Smirl
2005-04-08 18:58 ` Florian Weimer
2005-04-09 1:11 ` Marcin Dalecki
2005-04-09 1:50 ` David Lang
2005-04-09 22:12 ` Florian Weimer
2005-04-08 19:16 ` Matthias-Christian Ott
2005-04-08 19:32 ` Linus Torvalds
2005-04-08 19:44 ` Matthias-Christian Ott
2005-04-09 1:09 ` Marcin Dalecki
2005-04-08 17:35 ` Jeff Garzik
2005-04-08 18:47 ` Linus Torvalds
2005-04-08 18:56 ` Chris Wedgwood
2005-04-09 7:37 ` Willy Tarreau
2005-04-09 7:47 ` Neil Brown
2005-04-09 8:00 ` Willy Tarreau
2005-04-09 9:34 ` Neil Brown
2005-04-09 15:40 ` Paul Jackson
2005-04-09 16:16 ` Linus Torvalds
2005-04-09 17:15 ` Paul Jackson
2005-04-09 17:35 ` Paul Jackson
2005-04-09 1:04 ` Marcin Dalecki
2005-04-09 15:42 ` Paul Jackson
2005-04-09 18:45 ` Marcin Dalecki
2005-04-09 1:00 ` Marcin Dalecki
2005-04-09 1:09 ` Chris Wedgwood
2005-04-09 1:21 ` Marcin Dalecki
2005-04-08 7:17 ` ross
2005-04-08 15:50 ` Linus Torvalds
2005-04-09 2:53 ` Petr Baudis
2005-04-09 7:08 ` Randy.Dunlap [this message]
2005-04-09 18:06 ` [PATCH] " Petr Baudis
2005-04-10 1:01 ` Phillip Lougher
2005-04-10 1:42 ` Petr Baudis
2005-04-10 1:57 ` Phillip Lougher
2005-04-09 15:50 ` Paul Jackson
2005-04-09 16:26 ` Linus Torvalds
2005-04-09 17:08 ` Paul Jackson
2005-04-10 3:41 ` Paul Jackson
2005-04-10 8:39 ` David Lang
2005-04-10 9:40 ` Junio C Hamano
2005-04-10 16:46 ` Bill Davidsen
2005-04-10 17:50 ` Paul Jackson
2005-04-12 23:20 ` Pavel Machek
2005-04-08 7:34 ` Marcel Lanz
2005-04-08 9:23 ` Geert Uytterhoeven
2005-04-08 8:38 ` Matt Johnston
2005-04-12 7:14 ` Kernel SCM saga.. (bk license?) Kedar Sovani
2005-04-12 9:34 ` Catalin Marinas
2005-04-13 4:04 ` Ricky Beam
2005-04-08 11:42 ` Kernel SCM saga Catalin Marinas
[not found] <Pine.LNX.4.58.0504060800280.2215 () ppc970 ! osdl ! org>
2005-04-06 21:13 ` kfogel
2005-04-06 22:39 ` Jeff Garzik
2005-04-09 1:00 ` Marcin Dalecki
2005-04-08 22:27 Rajesh Venkatasubramanian
2005-04-08 23:29 ` Linus Torvalds
2005-04-09 0:29 ` Linus Torvalds
2005-04-09 16:20 ` Paul Jackson
2005-04-09 4:06 Walter Landry
2005-04-09 11:02 Samium Gromoff
2005-04-09 11:29 Samium Gromoff
2005-04-10 4:20 Albert Cahalan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20050409000859.73bf221f.rddunlap@osdl.org \
--to=rddunlap@osdl.org \
--cc=linux-kernel@vger.kernel.org \
--cc=pasky@ucw.cz \
--cc=ross@jose.lug.udel.edu \
--cc=torvalds@osdl.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).