* [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
@ 2005-04-26 3:24 Petr Baudis
2005-04-26 3:29 ` Petr Baudis
` (6 more replies)
0 siblings, 7 replies; 15+ messages in thread
From: Petr Baudis @ 2005-04-26 3:24 UTC (permalink / raw
To: git; +Cc: linux-kernel
Hello,
here goes Cogito-0.8, my SCMish layer over Linus Torvald's git tree
history tracker. This package was formerly called git-pasky, however
this release brings big changes. The usage is significantly different,
as well as some basic concepts; the history changed again (hopefully the
last time?) because of fixing dates of some old commits. The .git/
directory layout changed too.
Upgrading through pull is possible, but rather difficult and requires
some intimacy with both git, git-pasky and Cogito. So probably the best
way to go is to just get cogito-0.8 tarball at
http://www.kernel.org/pub/software/scm/cogito/
or
ftp://ftp.kernel.org/pub/software/scm/cogito/
build and install it, and do
cg-clone rsync://rsync.kernel.org/pub/scm/cogito/cogito.git
Yes, this is a huge change. No, I don't expect any further changes of
similar scale. I think the new interface is significantly simpler _and_
cleaner than the old one.
First for the concept changes. There is no concept of tracking
anymore; you just do either cg-pull to just fetch the changes, or
cg-update to fetch them as well as merge them to your working tree.
Even more significant change is that Cogito does not directly support
local branches anymore - git fork is gone, you just go to new directory
and do
cg-init ~/path/to/your/original/repository
(or cg-clone, which will try to create a new subdirectory for itself).
This now acts as a separate repository, except that it is hardlinked
with the original one; therefore you get no additional disk usage. To
get new changes to it from the original repository, you have to
cg-update origin. If you decide you want to merge back, go to the
original repository, add your new one as a branch and pull/update from
it.
As for the interface changes, you will probably find out on your own;
cg-help should be of some help. All the scripts now start with 'cg-',
and you should ignore the 'cg-X*' ones. The non-trivial mapping is:
git addremote -> cg-branch-add
git lsremote -> cg-branch-ls
git patch -> cg-mkpatch
git apply -> cg-patch
git lsobj -> cg-admin-lsobj
Commands that are gone:
git fork
git track
New commands:
cg-clone
cg-update
Of course other changes include various bugfixes, and latest Linus'
stuff (although we do not make use of Linus' tags yet).
Note that I don't know how many time will I have for hacking Cogito
until the next Sunday/Monday. I hope I will get some time to at least
apply bugfixes etc, but I don't know how much more will I be able to do.
You would make me a happy man if you could please port your pending
patches from git-pasky to Cogito; I promise to apply them and I hope
there isn't going to be another so big change in the foreseeable future,
which would cause major conflicts for your patches etc.
Note that I cc'd LKML since it is going to break stuff for anyone
using git-pasky now (apologies for that; it won't happen another time).
Please try not to keep it in the cc' list unless it is really relevant.
Have fun,
--
Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
C++: an octopus made by nailing extra legs onto a dog. -- Steve Taylor
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 3:24 [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Petr Baudis
@ 2005-04-26 3:29 ` Petr Baudis
2005-04-26 4:12 ` Mike Taht
` (5 subsequent siblings)
6 siblings, 0 replies; 15+ messages in thread
From: Petr Baudis @ 2005-04-26 3:29 UTC (permalink / raw
To: git; +Cc: linux-kernel
Dear diary, on Tue, Apr 26, 2005 at 05:24:22AM CEST, I got a letter
where Petr Baudis <pasky@ucw.cz> told me that...
> here goes Cogito-0.8, my SCMish layer over Linus Torvald's git tree
> history tracker. This package was formerly called git-pasky, however
> this release brings big changes. The usage is significantly different,
> as well as some basic concepts; the history changed again (hopefully the
> last time?) because of fixing dates of some old commits. The .git/
> directory layout changed too.
I forgot to mention that you should really only upgrade if you feel
brave and are willing to do some testing; it is likely there are some
new bugs introduced by the renaming, some leftovers of the original
git-pasky stuff in some not-so-frequently called scripts, etc. I will
see how many bug reports will we get and how fast will the bugcount
drop; if things won't stabilize very quickly, I might release
git-pasky-0.7.1 with few obvious bugfixes.
(And don't write announcements at 4am.)
--
Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
C++: an octopus made by nailing extra legs onto a dog. -- Steve Taylor
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 3:24 [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Petr Baudis
2005-04-26 3:29 ` Petr Baudis
@ 2005-04-26 4:12 ` Mike Taht
2005-04-26 12:23 ` Petr Baudis
2005-04-26 15:15 ` Martin Atukunda
2005-04-26 4:22 ` Benjamin Herrenschmidt
` (4 subsequent siblings)
6 siblings, 2 replies; 15+ messages in thread
From: Mike Taht @ 2005-04-26 4:12 UTC (permalink / raw
To: pasky, git; +Cc: linux-kernel
> Yes, this is a huge change. No, I don't expect any further changes of
> similar scale. I think the new interface is significantly simpler _and_
> cleaner than the old one.
Heh. Another huge change would be moving the top level directories
around a bit.
bindings COPYING git.spec Makefile programs README.reference tests
contrib doc include po README src VERSION
Leaving fixing the makefiles aside as an exercise for the interested
reader... that's:
#!/bin/sh
# completely rearrange the file structure of cogito/git
# just to make pasky and other scm users insane once again
# FIXME - fix the makefiles, git.spec
CFILES=`ls *.c`
DFILES=`ls ppc/* mozilla-sha1/*`
HFILES=`ls *.h`
SRCDIR=src # or libgit?
INCDIR=include/git-guts # or keep in SRCDIR or include/git or whatever
COGDIR=programs/cogito # or just cogito. is git-web likely to be inc?
mkdir -p $SRCDIR $INCDIR $COGDIR \
bindings/perl bindings/python bindings/ruby po tests doc # just ideas,
# no files (yet)
mv $CFILES ppc mozilla-sha1 $SRCDIR
mv $HFILES $INCDIR
COGFILES=`file * | grep "script text executable" | cut -f1 -d:`
mv $COGFILES $COGDIR
cg-rm $CFILES $HFILES $COGFILES
for i in $CFILES $DFILES
do
cg-add $SRCDIR/$i
done
for i in $HFILES
do
cg-add $INCDIR/$i
done
cg-commit
--
Mike Taht
"A straw vote only shows which way the hot air blows.
-- O'Henry"
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 3:24 [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Petr Baudis
2005-04-26 3:29 ` Petr Baudis
2005-04-26 4:12 ` Mike Taht
@ 2005-04-26 4:22 ` Benjamin Herrenschmidt
2005-04-26 4:58 ` Jeff Garzik
` (3 subsequent siblings)
6 siblings, 0 replies; 15+ messages in thread
From: Benjamin Herrenschmidt @ 2005-04-26 4:22 UTC (permalink / raw
To: pasky, git; +Cc: Linux Kernel list
On Tue, 2005-04-26 at 05:24 +0200, Petr Baudis wrote:
> Hello,
>
> here goes Cogito-0.8, my SCMish layer over Linus Torvald's git tree
> history tracker. This package was formerly called git-pasky, however
> this release brings big changes. The usage is significantly different,
> as well as some basic concepts; the history changed again (hopefully the
> last time?) because of fixing dates of some old commits. The .git/
> directory layout changed too.
>
> .../...
Unless you already did this in the latest release, it would be nice to
have something like havign all the low level tools be by default in some
~/lib/git or whatever, and only the cg-* scripts in ~/bin on install,
unless maybe you pass some kind of I_AM_A_REAL_GIT=1 on the make
line ...
I don't really plan to use the low level tools, and I don't like the way
they clobber my bin namespace :)
Ben.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 3:24 [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Petr Baudis
` (2 preceding siblings ...)
2005-04-26 4:22 ` Benjamin Herrenschmidt
@ 2005-04-26 4:58 ` Jeff Garzik
2005-04-26 5:18 ` Daniel Barkalow
2005-04-26 7:02 ` [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Philip Pokorny
` (2 subsequent siblings)
6 siblings, 1 reply; 15+ messages in thread
From: Jeff Garzik @ 2005-04-26 4:58 UTC (permalink / raw
To: pasky, git; +Cc: linux-kernel
Petr Baudis wrote:
> Hello,
>
> here goes Cogito-0.8, my SCMish layer over Linus Torvald's git tree
> history tracker. This package was formerly called git-pasky, however
> this release brings big changes. The usage is significantly different,
> as well as some basic concepts; the history changed again (hopefully the
> last time?) because of fixing dates of some old commits. The .git/
> directory layout changed too.
tar xvfj $x
cd x
make
...
gcc -g -O2 -Wall '-DSHA1_HEADER=<openssl/sha.h>' -o rpull rpull.c
libgit.a rsh.c -lz -lssl
gcc -g -O2 -Wall '-DSHA1_HEADER=<openssl/sha.h>' -o rev-list rev-list.c
libgit.a -lz -lssl
gcc -g -O2 -Wall '-DSHA1_HEADER=<openssl/sha.h>' -o git-mktag
git-mktag.c libgit.a -lz -lssl
gcc -g -O2 -Wall '-DSHA1_HEADER=<openssl/sha.h>' -o diff-tree-helper
diff-tree-helper.c libgit.a -lz -lssl
make: commit-id: Command not found
Generating cg-version...
So, it still complains about commit-id
Jeff
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 4:58 ` Jeff Garzik
@ 2005-04-26 5:18 ` Daniel Barkalow
2005-04-26 5:40 ` Al Viro
0 siblings, 1 reply; 15+ messages in thread
From: Daniel Barkalow @ 2005-04-26 5:18 UTC (permalink / raw
To: Jeff Garzik; +Cc: pasky, git, linux-kernel
On Tue, 26 Apr 2005, Jeff Garzik wrote:
> tar xvfj $x
> cd x
> make
> ...
> gcc -g -O2 -Wall '-DSHA1_HEADER=<openssl/sha.h>' -o rpull rpull.c
> libgit.a rsh.c -lz -lssl
> gcc -g -O2 -Wall '-DSHA1_HEADER=<openssl/sha.h>' -o rev-list rev-list.c
> libgit.a -lz -lssl
> gcc -g -O2 -Wall '-DSHA1_HEADER=<openssl/sha.h>' -o git-mktag
> git-mktag.c libgit.a -lz -lssl
> gcc -g -O2 -Wall '-DSHA1_HEADER=<openssl/sha.h>' -o diff-tree-helper
> diff-tree-helper.c libgit.a -lz -lssl
> make: commit-id: Command not found
> Generating cg-version...
>
> So, it still complains about commit-id
In this case, it would complain about .git/HEAD even if it found
commit-id. The right solution is probably to suppress that part if there's
no .git/HEAD.
-Daniel
*This .sig left intentionally blank*
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 5:18 ` Daniel Barkalow
@ 2005-04-26 5:40 ` Al Viro
2005-04-26 6:03 ` [PATCH] Don't use commit-id in building Daniel Barkalow
0 siblings, 1 reply; 15+ messages in thread
From: Al Viro @ 2005-04-26 5:40 UTC (permalink / raw
To: Daniel Barkalow; +Cc: Jeff Garzik, pasky, git, linux-kernel
> > So, it still complains about commit-id
>
> In this case, it would complain about .git/HEAD even if it found
> commit-id. The right solution is probably to suppress that part if there's
> no .git/HEAD.
The right thing is to stop assuming that everyone has . in their $PATH,
to start with...
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH] Don't use commit-id in building
2005-04-26 5:40 ` Al Viro
@ 2005-04-26 6:03 ` Daniel Barkalow
0 siblings, 0 replies; 15+ messages in thread
From: Daniel Barkalow @ 2005-04-26 6:03 UTC (permalink / raw
To: Al Viro; +Cc: Jeff Garzik, pasky, git, linux-kernel
On Tue, 26 Apr 2005, Al Viro wrote:
> > > So, it still complains about commit-id
> >
> > In this case, it would complain about .git/HEAD even if it found
> > commit-id. The right solution is probably to suppress that part if there's
> > no .git/HEAD.
>
> The right thing is to stop assuming that everyone has . in their $PATH,
> to start with...
Does anyone have . in their $PATH? I've only used the commit-id that I
installed previously. Since the tarball doesn't have a .git directory, the
only way you end up building cogito from a directory with a repository is
by using an earlier cogito or something of the sort, in which case, you
probably have the program.
In any case, commit-id isn't actually necessary for this operation.
-
We don't necessarily have commit-id available when building. Furthermore,
we don't necessarily have a repository. Just put in .git/HEAD if it
exists; otherwise, it's a base distribution.
Signed-Off-By: Daniel Barkalow <barkalow@iabervon.org>
Index: Makefile
===================================================================
--- f262000f302b749e485f5eb971e6aabefbb85680/Makefile (mode:100644 sha1:4f01bbbbb3fd0e53e9ce968f167b6dae68fcfa92)
+++ uncommitted/Makefile (mode:100644)
@@ -87,11 +87,13 @@
http-pull: LIBS += -lcurl
-cg-version: $(VERSION)
+cg-version: $(VERSION) .git/HEAD
@echo Generating cg-version...
@rm -f $@
@echo "#!/bin/sh" > $@
- @PATH=.:$(PATH) echo "echo \"$(shell cat $(VERSION)) ($(shell commit-id))\"" >> $@
+ @echo -n "echo \"$(shell cat $(VERSION))" >> $@
+ @if [ -r .git/HEAD ]; then echo -n " ($(shell cat .git/HEAD))" >> $@; fi
+ @echo "\"" >> $@
@chmod +x $@
install: $(PROG) $(SCRIPTS) $(SCRIPT) $(GEN_SCRIPT)
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 3:24 [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Petr Baudis
` (3 preceding siblings ...)
2005-04-26 4:58 ` Jeff Garzik
@ 2005-04-26 7:02 ` Philip Pokorny
2005-04-26 20:43 ` Petr Baudis
2005-04-26 13:36 ` Morten Welinder
2005-04-26 22:21 ` Pavel Machek
6 siblings, 1 reply; 15+ messages in thread
From: Philip Pokorny @ 2005-04-26 7:02 UTC (permalink / raw
To: pasky, git; +Cc: linux-kernel
Petr Baudis wrote:
> the history changed again (hopefully the
>last time?) because of fixing dates of some old commits.
>
Looks like the git-pasky-0.7 tags (and friends) are now dead links. For
example:
[philip@xray cogito]$ cg-mkpatch git-pasky-0.7:HEAD
.git/objects/c8/3b95297c2a6336c2007548f909769e0862b509: No such file or
directory
fatal: cat-file c83b95297c2a6336c2007548f909769e0862b509: bad file
Invalid id: c83b95297c2a6336c2007548f909769e0862b509
Is there any way to recover that, or has the timeline been irrevocably
altered, and we're all now doomed to meet bastard daughters of long dead
crew members? [grin]...
:v)
Actually, I really liked that Enterprise-C episode...
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 4:12 ` Mike Taht
@ 2005-04-26 12:23 ` Petr Baudis
2005-04-26 17:40 ` Paul Jackson
2005-04-26 15:15 ` Martin Atukunda
1 sibling, 1 reply; 15+ messages in thread
From: Petr Baudis @ 2005-04-26 12:23 UTC (permalink / raw
To: Mike Taht; +Cc: git
Dear diary, on Tue, Apr 26, 2005 at 06:12:04AM CEST, I got a letter
where Mike Taht <mike.taht@timesys.com> told me that...
>
> > Yes, this is a huge change. No, I don't expect any further changes of
> >similar scale. I think the new interface is significantly simpler _and_
> >cleaner than the old one.
>
> Heh. Another huge change would be moving the top level directories
> around a bit.
>
>
> bindings COPYING git.spec Makefile programs README.reference tests
> contrib doc include po README src VERSION
>
> Leaving fixing the makefiles aside as an exercise for the interested
> reader... that's:
Actually, I've been thinking about this, but I think we just don't need
it *yet*.
And by the time we will need to make things more hierarchical, we will
hopefully have some way to deal with renames sensibly. We need something
for that too - either something ultra-smart as Linus describes, or
explicit renames, but merging not working across renames makes them
total nightmare.
--
Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
C++: an octopus made by nailing extra legs onto a dog. -- Steve Taylor
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 3:24 [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Petr Baudis
` (4 preceding siblings ...)
2005-04-26 7:02 ` [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Philip Pokorny
@ 2005-04-26 13:36 ` Morten Welinder
2005-04-26 22:21 ` Pavel Machek
6 siblings, 0 replies; 15+ messages in thread
From: Morten Welinder @ 2005-04-26 13:36 UTC (permalink / raw
To: pasky, git
> [...] build and install it, [...]
It assumes the presense of .git/HEAD but doesn't actually fail when missing.
...
gcc -g -O2 -Wall '-DSHA1_HEADER=<openssl/sha.h>' -o diff-tree-helper
diff-tree-helper.c libgit.a -lz -lssl
cat: .git/HEAD: No such file or directory
Invalid id:
Generating cg-version...
Morten
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 4:12 ` Mike Taht
2005-04-26 12:23 ` Petr Baudis
@ 2005-04-26 15:15 ` Martin Atukunda
1 sibling, 0 replies; 15+ messages in thread
From: Martin Atukunda @ 2005-04-26 15:15 UTC (permalink / raw
To: git
On Tuesday 26 April 2005 07:12, Mike Taht wrote:
> > Yes, this is a huge change. No, I don't expect any further changes of
> > similar scale. I think the new interface is significantly simpler _and_
> > cleaner than the old one.
>
> Heh. Another huge change would be moving the top level directories
> around a bit.
>
>
> bindings COPYING git.spec Makefile programs README.reference tests
> contrib doc include po README src VERSION
>
> Leaving fixing the makefiles aside as an exercise for the interested
> reader... that's:
<snip>
something like:
--- cogito-0.8.orig/Makefile 2005-04-26 06:02:01.000000000 +0300
+++ cogito-0.8/Makefile 2005-04-26 18:10:52.558786968 +0300
@@ -15,7 +15,7 @@
# BREAK YOUR LOCAL DIFFS! show-diff and anything using it will likely
randomly
# break unless your underlying filesystem supports those sub-second times
# (my ext3 doesn't).
-CFLAGS=-g -O2 -Wall
+CFLAGS=-g -O2 -Wall -Isrc
# Should be changed to /usr/local
prefix=$(HOME)
@@ -25,19 +25,23 @@
CC=gcc
AR=ar
-SCRIPTS=git-merge-one-file-script git-prune-script git-pull-script
git-tag-script
+SCRIPTS=programs/cogito/git-merge-one-file-script
programs/cogito/git-prune-script \
+ programs/cogito/git-pull-script programs/cogito/git-tag-script
-PROG= update-cache show-diff init-db write-tree read-tree commit-tree \
- cat-file fsck-cache checkout-cache diff-tree rev-tree show-files \
- check-files ls-tree merge-base merge-cache unpack-file git-export \
- diff-cache convert-cache http-pull rpush rpull rev-list git-mktag \
- diff-tree-helper
-
-SCRIPT= commit-id tree-id parent-id cg-Xdiffdo cg-Xmergefile \
- cg-add cg-admin-lsobj cg-cancel cg-clone cg-commit cg-diff \
- cg-export cg-help cg-init cg-log cg-ls cg-merge cg-mkpatch \
- cg-patch cg-pull cg-branch-add cg-branch-ls cg-rm cg-seek cg-status \
- cg-tag cg-update cg-Xlib
+PROG= src/update-cache src/show-diff src/init-db src/write-tree
src/read-tree src/commit-tree \
+ src/cat-file src/fsck-cache src/checkout-cache src/diff-tree src/rev-tree
src/show-files \
+ src/check-files src/ls-tree src/merge-base src/merge-cache src/unpack-file
src/git-export \
+ src/diff-cache src/convert-cache src/http-pull src/rpush src/rpull
src/rev-list src/git-mktag \
+ src/diff-tree-helper
+
+SCRIPT= programs/cogito/commit-id programs/cogito/tree-id
programs/cogito/parent-id programs/cogito/cg-Xdiffdo\
+ programs/cogito/cg-Xmergefile programs/cogito/cg-add
programs/cogito/cg-admin-lsobj \
+ programs/cogito/cg-cancel programs/cogito/cg-clone programs/cogito/cg-commit
programs/cogito/cg-diff \
+ programs/cogito/cg-export programs/cogito/cg-help programs/cogito/cg-init
programs/cogito/cg-log \
+ programs/cogito/cg-ls programs/cogito/cg-merge programs/cogito/cg-mkpatch
programs/cogito/cg-patch \
+ programs/cogito/cg-pull programs/cogito/cg-branch-add
programs/cogito/cg-branch-ls \
+ programs/cogito/cg-rm programs/cogito/cg-seek programs/cogito/cg-status
programs/cogito/cg-tag \
+ programs/cogito/cg-update programs/cogito/cg-Xlib
COMMON= read-cache.o
@@ -45,17 +49,17 @@
VERSION= VERSION
-LIB_OBJS=read-cache.o sha1_file.o usage.o object.o commit.o tree.o blob.o
-LIB_FILE=libgit.a
-LIB_H=cache.h object.h
+LIB_OBJS=src/read-cache.o src/sha1_file.o src/usage.o src/object.o
src/commit.o src/tree.o src/blob.o src/rsh.o
+LIB_FILE=src/libgit.a
+LIB_H=src/cache.h src/object.h src/rsh.h
-LIB_H += strbuf.h
-LIB_OBJS += strbuf.o
+LIB_H += src/strbuf.h
+LIB_OBJS += src/strbuf.o
-LIB_H += diff.h
-LIB_OBJS += diff.o
+LIB_H += src/diff.h
+LIB_OBJS += src/diff.o
-LIBS = -lz
+LIBS = -lz -lcurl
ifdef MOZILLA_SHA1
SHA1_HEADER="mozilla-sha1/sha1.h"
@@ -98,8 +102,14 @@
install -m755 -d $(DESTDIR)$(bindir)
install $(PROG) $(SCRIPTS) $(SCRIPT) $(GEN_SCRIPT) $(DESTDIR)$(bindir)
+uninstall:
+ $(foreach file,$(SCRIPT),$(shell rm $(DESTDIR)$(bindir)/$(shell basename
$(file))))
+ $(foreach file,$(PROG),$(shell rm $(DESTDIR)$(bindir)/$(shell basename
$(file))))
+ $(foreach file,$(SCRIPTS),$(shell rm $(DESTDIR)$(bindir)/$(shell basename
$(file))))
+ $(foreach file,$(GEN_SCRIPT),$(shell rm $(DESTDIR)$(bindir)/$(shell basename
$(file))))
+
clean:
- rm -f *.o mozilla-sha1/*.o ppc/*.o $(PROG) $(GEN_SCRIPT) $(LIB_FILE)
+ rm -f *.o src/*.o cogito/*.o mozilla-sha1/*.o ppc/*.o $(PROG) $(GEN_SCRIPT)
$(LIB_FILE)
backup: clean
cd .. ; tar czvf dircache.tar.gz dir-cache
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 12:23 ` Petr Baudis
@ 2005-04-26 17:40 ` Paul Jackson
0 siblings, 0 replies; 15+ messages in thread
From: Paul Jackson @ 2005-04-26 17:40 UTC (permalink / raw
To: Petr Baudis; +Cc: mike.taht, git
> some way to deal with renames sensibly.
For a Linux kernel merge tool that I did inside SGI, I come to the
conclusion the following heuristics identified renames fairly
accurately, coming up with the same renames as a careful manual
examination.
The key heuristic was to consider one file A to be a rename of another B
if the size (number of lines) of the diff of A and B (diff -auw A B | wc
-l) is less than 50% of the combined size of A and B (cat A B | wc -l).
Only pathname pairs with the same basename were considered - I was
focused here on renames due to directory restructuring. I'm not sure
now if this is a good assumption - but it sure saved some computation.
Any file with the string "Makefile" in its name had to be excluded from
consideration.
In case of multiple potential renames (say one file is copied to two
places, removing the original and modifying each copy a little), the
'best' rename was selected, where 'best' meant the lowest ratio of
diff 'diff -auw' size to combined 'cat' size.
The end result of the above was a fairly natural identification of
renames. If say I moved kernel/cpuset.c to mm/cpuset.c and changed
it a little bit, the above heuristics would show a rename, plus
a few changes.
--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <pj@engr.sgi.com> 1.650.933.1373, 1.925.600.0401
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 7:02 ` [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Philip Pokorny
@ 2005-04-26 20:43 ` Petr Baudis
0 siblings, 0 replies; 15+ messages in thread
From: Petr Baudis @ 2005-04-26 20:43 UTC (permalink / raw
To: Philip Pokorny; +Cc: git, linux-kernel
Dear diary, on Tue, Apr 26, 2005 at 09:02:34AM CEST, I got a letter
where Philip Pokorny <ppokorny@mindspring.com> told me that...
> Petr Baudis wrote:
>
> >the history changed again (hopefully the
> >last time?) because of fixing dates of some old commits.
> >
>
> Looks like the git-pasky-0.7 tags (and friends) are now dead links. For
> example:
>
> [philip@xray cogito]$ cg-mkpatch git-pasky-0.7:HEAD
> .git/objects/c8/3b95297c2a6336c2007548f909769e0862b509: No such file or
> directory
> fatal: cat-file c83b95297c2a6336c2007548f909769e0862b509: bad file
> Invalid id: c83b95297c2a6336c2007548f909769e0862b509
Oops. Good catch, fixed. I actually just iterated cg-log. ;-)
--
Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
C++: an octopus made by nailing extra legs onto a dog. -- Steve Taylor
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!)
2005-04-26 3:24 [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Petr Baudis
` (5 preceding siblings ...)
2005-04-26 13:36 ` Morten Welinder
@ 2005-04-26 22:21 ` Pavel Machek
6 siblings, 0 replies; 15+ messages in thread
From: Pavel Machek @ 2005-04-26 22:21 UTC (permalink / raw
To: pasky, git
Hi!
> here goes Cogito-0.8, my SCMish layer over Linus Torvald's git tree
> history tracker. This package was formerly called git-pasky, however
> this release brings big changes. The usage is significantly different,
> as well as some basic concepts; the history changed again (hopefully the
> last time?) because of fixing dates of some old commits. The .git/
> directory layout changed too.
>
> Upgrading through pull is possible, but rather difficult and requires
> some intimacy with both git, git-pasky and Cogito. So probably the best
> way to go is to just get cogito-0.8 tarball at
>
> http://www.kernel.org/pub/software/scm/cogito/
>
> or
>
> ftp://ftp.kernel.org/pub/software/scm/cogito/
>
> build and install it, and do
>
> cg-clone rsync://rsync.kernel.org/pub/scm/cogito/cogito.git
>
>
>
> Yes, this is a huge change. No, I don't expect any further changes of
> similar scale. I think the new interface is significantly simpler _and_
> cleaner than the old one.
It seems to need libcurl-dev... installed.
Error handling could certainly be improved:
pavel@amd:/data/l/cogito$ cg-clone rsync://rsync.kernel.org/pub/scm/cogito/cogito.git
./cg-clone: line 22: cg-init: command not found
pavel@amd:/data/l/cogito$ PATH=/data/l/cogito:$PATH
pavel@amd:/data/l/cogito$ cg-clone rsync://rsync.kernel.org/pub/scm/cogito/cogito.git
cg-clone: cogito/ already exists
Pavel
--
Boycott Kodak -- for their patent abuse against Java.
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2005-04-26 22:22 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-04-26 3:24 [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Petr Baudis
2005-04-26 3:29 ` Petr Baudis
2005-04-26 4:12 ` Mike Taht
2005-04-26 12:23 ` Petr Baudis
2005-04-26 17:40 ` Paul Jackson
2005-04-26 15:15 ` Martin Atukunda
2005-04-26 4:22 ` Benjamin Herrenschmidt
2005-04-26 4:58 ` Jeff Garzik
2005-04-26 5:18 ` Daniel Barkalow
2005-04-26 5:40 ` Al Viro
2005-04-26 6:03 ` [PATCH] Don't use commit-id in building Daniel Barkalow
2005-04-26 7:02 ` [ANNOUNCE] Cogito-0.8 (former git-pasky, big changes!) Philip Pokorny
2005-04-26 20:43 ` Petr Baudis
2005-04-26 13:36 ` Morten Welinder
2005-04-26 22:21 ` Pavel Machek
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
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 read-only IMAP folder(s) and NNTP newsgroup(s).