login
Header Space

 
 

[howto] Kernel hacker's guide to git, updated

Previous thread: Re: Use of the -f flag on checkout by Matthias Urlichs on Thursday, September 29, 2005 - 3:09 am. (1 message)

Next thread: [PATCH] Old curl does not know about CURLOPT_SSLKEY by Johannes Schindelin on Thursday, September 29, 2005 - 12:19 pm. (2 messages)
To: Linux Kernel <linux-kernel@...>
Cc: Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 7:03 am

Just updated my KHGtG to include the latest goodies available in 
git-core, the Linux kernel standard SCM tool:

	http://linux.yyz.us/git-howto.html

Several changes in git-core have made working with git a lot easier, so 
be sure to re-familiarize yourself with the development process.

Comments, corrections, and notes of omission welcome.  This document 
mainly reflects my typical day-to-day git activities, and may not be 
very applicable outside of kernel work.

	Jeff



-
To: Jeff Garzik <jgarzik@...>
Cc: Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 4:02 pm

On Thu, Sep 29, 2005 at 07:03:05AM -0400, Jeff Garzik wrote:
 &gt; 
 &gt; Just updated my KHGtG to include the latest goodies available in 
 &gt; git-core, the Linux kernel standard SCM tool:
 &gt; 
 &gt; 	http://linux.yyz.us/git-howto.html
 &gt; 
 &gt; Several changes in git-core have made working with git a lot easier, so 
 &gt; be sure to re-familiarize yourself with the development process.
 &gt; 
 &gt; Comments, corrections, and notes of omission welcome.  This document 
 &gt; mainly reflects my typical day-to-day git activities, and may not be 
 &gt; very applicable outside of kernel work.

You wrote..

$ git clone rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git linux-2.6
$ cd linux-2.6
$ rsync -a --verbose --stats --progress \
  rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git/ \
  .git/

Could be just..

$ git clone rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git linux-2.6
$ cd linux-2.6
$ git pull

Likewise, in the next section, git pull doesn't need an argument
if pulling from the repo it cloned.

		Dave

-
To: Dave Jones <davej@...>
Cc: Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 4:15 pm

Nope.  It intentionally includes the manual rsync because clone/pull 
doesn't seem to grab tags.  Or at least last time I checked...

	Jeff


-
To: Jeff Garzik <jgarzik@...>
Cc: Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 5:23 pm

i just used the instructions at the bottom of your web page to grab new 
tags, and it completely wiped all my Stacked Git metadata.  (fortunately 
i was trying this in a test repository, and it will be simple to recover 
the missing files).

so, this is probably something that should have a warning, or maybe you 
might consider providing an example that won't wipe out existing files 
and directories under .git/ ...
To: Jeff Garzik <jgarzik@...>
Cc: <git@...>
Date: Thursday, September 29, 2005 - 5:04 pm

clone does (or should), fetch (and hence pull) does not
automatically.  Running the following one-liner every once in a
while would sync your set of tags with Linus:

git fetch origin `git-ls-remote --tags origin | sed -ne 's|^.*refs/tags/|tag |p'`


-
To: Linux Kernel <linux-kernel@...>
Cc: Junio C Hamano <junkio@...>, <git@...>
Date: Friday, September 30, 2005 - 7:15 am

Thanks for all the comments.  I just updated the KHGtG with the feedback 
I received.  Go to

	http://linux.yyz.us/git-howto.html

and click reload.  Continued criticism^H^H^Hcomments welcome!



Two items of note:


that's way too long and convoluted to deal with.  Once the 'git fetch 
--tags' changes make it into the official repository (are they there 
already?), I'll remove all the remaining direct references to running rsync.


2) What is the easiest way to obtain a list of changes present in 
repository B, that are not present in repository A?  I used to use 
git-changes-script [hacked cg-log script] for this:

	$ cd /repo/netdev-2.6
	$ git-changes-script -L ../linux-2.6

would display all changes in /repo/netdev-2.6 which are not present in 
/repo/linux-2.6.  This is similar to 'git log master..HEAD', except for 
repositories rather than branches.

	Jeff


-
To: Jeff Garzik <jgarzik@...>
Cc: Linux Kernel <linux-kernel@...>, <git@...>
Date: Friday, September 30, 2005 - 6:52 pm

Jeff Garzik &lt;jgarzik@pobox.com&gt; :

The basic tasks make no use of git-whatchanged.

Even if it is a CVSism, it is quite handful to retrieve the history of
the patchsets by aiming at a specific file.

--
Ueimor
-
To: Jeff Garzik <jgarzik@...>
Cc: Linux Kernel <linux-kernel@...>, Junio C Hamano <junkio@...>, <git@...>
Date: Friday, September 30, 2005 - 2:13 pm

- To know the current branch, "git branch" is enough (the one '*'-ed)
- rsync(1) a repository is dangerous, it might catch it in the middle of
  a update and give you an incomplete/messed up copy. Repeat rsync until no
  change, perhaps?
- I understand "git checkout -f" blows away any local changes, no questions
  asked. Not very nice to suggest that to a newbie...

Thanks for the docu!
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                     Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria              +56 32 654239
Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513
-
To: Horst von Brand <vonbrand@...>
Cc: Linux Kernel <linux-kernel@...>, Junio C Hamano <junkio@...>, <git@...>
Date: Friday, September 30, 2005 - 8:17 pm

Usually that's just unlucky.  I have caught kernel.org in the middle of 

I constantly run into problems if I -do not- use the "-f" flag.  I 
habitually use it at all times, now.

Thanks,

	Jeff



-
To: Jeff Garzik <jgarzik@...>
Cc: Linux Kernel <linux-kernel@...>, Junio C Hamano <junkio@...>, <git@...>
Date: Friday, September 30, 2005 - 8:07 am

FYI, the rsync command to get the tags blows away .git/branches/origin,
so on the next "git pull", git will tell you "Where do you want to
fetch from today?".

In the mean time, better make it two separate rsync commands (sorry for
the long lines):

rsync -a --delete --verbose --stats --progress \
  rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git/tags/ \
  .git/tags/

rsync -a --delete --verbose --stats --progress \
  rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git/heads/ \
  .git/heads/


Erik

-- 
+-- Erik Mouw -- www.harddisk-recovery.com -- +31 70 370 12 90 --
| Lab address: Delftechpark 26, 2628 XH, Delft, The Netherlands
-
To: Erik Mouw <erik@...>
Cc: Linux Kernel <linux-kernel@...>, Junio C Hamano <junkio@...>, <git@...>
Date: Friday, September 30, 2005 - 10:08 am

Agreed, though I always run 'git pull $url' each time, so I never 
noticed this.

Since git clone pulls the tags, I have eliminated the first rsync 
completely.

	Jeff


-
To: Jeff Garzik <jgarzik@...>
Cc: Linux Kernel <linux-kernel@...>, Junio C Hamano <junkio@...>, <git@...>
Date: Friday, September 30, 2005 - 8:02 am

The error is still there.

oliver@oenone:~/linux-2.6&gt; git checkout -f master
usage: read-tree (&lt;sha&gt; | -m &lt;sha1&gt; [&lt;sha2&gt; &lt;sha3&gt;])

	Regards
		Oliver
-
To: Oliver Neukum <oliver@...>
Cc: Linux Kernel <linux-kernel@...>, Junio C Hamano <junkio@...>, <git@...>
Date: Friday, September 30, 2005 - 9:58 am

Something's wrong with your installation, not the instructions.  Works 
fine here.

	Jeff



-
To: Jeff Garzik <jgarzik@...>
Cc: Oliver Neukum <oliver@...>, Linux Kernel <linux-kernel@...>, Junio C Hamano <junkio@...>, <git@...>
Date: Friday, September 30, 2005 - 11:10 am

Right , you must have a corrupted copy of the git repo. Do the initial
cloning of the linux repository again, and then retry the git
checkout.
-
To: Jeff Garzik <jgarzik@...>
Cc: Linux Kernel <linux-kernel@...>, <git@...>
Date: Friday, September 30, 2005 - 7:55 am

Sounds like a thinly veiled threat and/or very effective
prodding ;-).

It is not there yet only because I simply have not got around to
it, but it will happen before 0.99.8.

I suspect the version Linus posted has a funny interaction with
'git-pull'; 'git pull --tags' by mistake, or intentionally to
file a bug report to annoy me ;-), would create an Octopus out

I think I still have the copy you sent to the list.  If you do
not mind me placing in the master branch just holler -- better
yet please send a patch with commit log and signoff to add the
latest, and I will apply it.

-jc

-
To: Junio C Hamano <junkio@...>
Cc: Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, <git@...>
Date: Friday, September 30, 2005 - 2:14 pm

Hey, even more impressive is "git pull --all", which will happily try to 
create an octopus of every single ref available at the other end.

Now, I think that octopus merges in _general_ are likely to be driver 
error, and that it might make sense to have a separate flag to enable 
them in the first place. That would solve the confusion..

So then you could do

	git pull --all --octopus xyzzy

if you _really_ meant to do that. 

		Linus
-
To: Junio C Hamano <junkio@...>
Cc: Linux Kernel <linux-kernel@...>, <git@...>
Date: Friday, September 30, 2005 - 10:11 am

It's archived here:
http://www.kernel.org/pub/linux/kernel/people/jgarzik/git-changes-script

but it needs a git expert (read: not me :)) to fix it up for the very 
latest git-core stuff.


Regards,

	Jeff



-
To: Dave Jones <davej@...>
Cc: Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 4:07 pm

That is not actually the same.  "git pull" for example will not download 

Now that is definitely correct.  (-:

Best regards,

	Anton
-- 
Anton Altaparmakov &lt;aia21 at cam.ac.uk&gt; (replace at with @)
Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
Linux NTFS maintainer / IRC: #ntfs on irc.freenode.net
WWW: http://linux-ntfs.sf.net/ &amp; http://www-stu.christs.cam.ac.uk/~aia21/
-
To: Anton Altaparmakov <aia21@...>
Cc: Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 4:11 pm

On Thu, Sep 29, 2005 at 09:07:29PM +0100, Anton Altaparmakov wrote:

 &gt; &gt; $ git clone rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git linux-2.6
 &gt; &gt; $ cd linux-2.6
 &gt; &gt; $ rsync -a --verbose --stats --progress \
 &gt; &gt;   rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git/ \
 &gt; &gt;   .git/
 &gt; &gt; 
 &gt; &gt; Could be just..
 &gt; &gt; 
 &gt; &gt; $ git clone rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git linux-2.6
 &gt; &gt; $ cd linux-2.6
 &gt; &gt; $ git pull
 &gt; 
 &gt; That is not actually the same.  "git pull" for example will not download 
 &gt; Linus' tags whilst the rsync would get everything.

Ah. I didn't know this. Thanks.
Hmm, it'd be nice to have a shorthand 'not have to type the url, pull everything'.
Something like 'git pull all'.

		Dave

-
To: Dave Jones <davej@...>
Cc: Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 5:14 pm

Something like this?

Except it's called "git fetch --all", and it's obviously totally untested.

 		Linus
--
diff --git a/git-fetch.sh b/git-fetch.sh
--- a/git-fetch.sh
+++ b/git-fetch.sh
@@ -5,6 +5,8 @@
  _x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'
  _x40="$_x40$_x40$_x40$_x40$_x40$_x40$_x40$_x40"

+all=
+tags=
  append=
  force=
  update_head_ok=
@@ -17,6 +19,12 @@ do
  	-f|--f|--fo|--for|--forc|--force)
  		force=t
  		;;
+	--tags)
+		tags=t
+		;;
+	--all)
+		all=t
+		;;
  	-u|--u|--up|--upd|--upda|--updat|--update|--update-|--update-h|\
  	--update-he|--update-hea|--update-head|--update-head-|\
  	--update-head-o|--update-head-ok)
@@ -158,7 +166,16 @@ case "$update_head_ok" in
  	;;
  esac

-for ref in $(get_remote_refs_for_fetch "$@")
+taglist=
+if [ "$tags$all" ]; then
+	pattern='/refs\/tags/'
+	if [ "$all" ]; then
+		pattern='/refs/'
+	fi
+	taglist=$(git-ls-remote "$remote" | awk "$pattern"' { print $2":"$2 }')
+fi
+
+for ref in $(get_remote_refs_for_fetch "$@" $taglist)
  do
      refs="$refs $ref"

-
To: Dave Jones <davej@...>
Cc: Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 5:26 pm

Gaah. Using a new pine version, and it is back to corrupting whitespace.

Damn all mailer writers. Do they think email is just for grandma?

 		Linus
-
To: Dave Jones <davej@...>
Cc: Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 5:35 pm

Ok, disabling "text flowing" seems to have fixed it. It still leaves empty 
spaces at the end of lines when doing normal word-wrapping in the editor 
(and then seems to use those empty spaces as a "marker" for flowing), but 
that's at least just a small silly detail.

So how about this patch now? With it you can do

	git fetch --tags &lt;linus-kernel-repo&gt;

and it should fetch all my tags automatically.

		Linus
---
diff --git a/git-fetch.sh b/git-fetch.sh
--- a/git-fetch.sh
+++ b/git-fetch.sh
@@ -5,6 +5,8 @@
 _x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'
 _x40="$_x40$_x40$_x40$_x40$_x40$_x40$_x40$_x40"
 
+all=
+tags=
 append=
 force=
 update_head_ok=
@@ -17,6 +19,12 @@ do
 	-f|--f|--fo|--for|--forc|--force)
 		force=t
 		;;
+	--tags)
+		tags=t
+		;;
+	--all)
+		all=t
+		;;
 	-u|--u|--up|--upd|--upda|--updat|--update|--update-|--update-h|\
 	--update-he|--update-hea|--update-head|--update-head-|\
 	--update-head-o|--update-head-ok)
@@ -158,7 +166,16 @@ case "$update_head_ok" in
 	;;
 esac
 
-for ref in $(get_remote_refs_for_fetch "$@")
+taglist=
+if [ "$tags$all" ]; then
+	pattern='/refs\/tags/'
+	if [ "$all" ]; then
+		pattern='/refs/'
+	fi
+	taglist=$(git-ls-remote "$remote" | awk "$pattern"' { print $2":"$2 }')
+fi
+
+for ref in $(get_remote_refs_for_fetch "$@" $taglist)
 do
     refs="$refs $ref"
 
-
To: Linus Torvalds <torvalds@...>
Cc: Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 5:40 pm

On Thu, Sep 29, 2005 at 02:35:15PM -0700, Linus Torvalds wrote:
 &gt; 
 &gt; 
 &gt; On Thu, 29 Sep 2005, Linus Torvalds wrote:
 &gt; &gt; 
 &gt; &gt; Gaah. Using a new pine version, and it is back to corrupting whitespace.
 &gt; 
 &gt; Ok, disabling "text flowing" seems to have fixed it. It still leaves empty 
 &gt; spaces at the end of lines when doing normal word-wrapping in the editor 
 &gt; (and then seems to use those empty spaces as a "marker" for flowing), but 
 &gt; that's at least just a small silly detail.
 &gt; 
 &gt; So how about this patch now? With it you can do
 &gt; 
 &gt; 	git fetch --tags &lt;linus-kernel-repo&gt;
 &gt; 
 &gt; and it should fetch all my tags automatically.

Seems to work. I blew away git/refs/tags/v2.6.13*
and git fetch --tags fetched them all back just fine.

		Dave

-
To: Linus Torvalds <torvalds@...>
Cc: Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 5:33 pm

On Thu, Sep 29, 2005 at 02:26:42PM -0700, Linus Torvalds wrote:

 &gt; On Thu, 29 Sep 2005, Linus Torvalds wrote:
 &gt; &gt;
 &gt; &gt;Something like this?
 &gt; 
 &gt; Gaah. Using a new pine version, and it is back to corrupting whitespace.
 &gt; 
 &gt; Damn all mailer writers. Do they think email is just for grandma?

What I find amusing is that it was a patch rejection mail from you
*years* back (circa 2000 iirc), telling me my pine corrupted whitespace,
that made me switch MUA ;-)

All these years later, and it's still buggered ?

		Dave

-
To: Dave Jones <davej@...>
Cc: Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 5:55 pm

Actually, it seems better. It seems to be buggered by default, but it used 
to be that you had to actually recompile pine to make it behave. Now you 
can just disable "strip-whitespace-before-send" and _enable_ 
"quell-flowed-text" and those together seem to do the trick. No extra 
patches or recompiles necessary.

So there's progress. 

Of course, pico is still pico. Which I find a bit sad: my editor of choise 
is still an improved version of uemacs, and pico actually comes from the 
same uemacs history, but has different key-bindings for just enough keys 
to be slightly confusing.

Still, that shared history means that I find pico a lot more to my taste 
than just about any other emailer editor out there. It may have a few 
differences, but it has more things in common..

		Linus
-
To: Linus Torvalds <torvalds@...>
Cc: Dave Jones <davej@...>, Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 7:17 pm

Linus Torvalds &lt;torvalds@osdl.org&gt; wrote:


Can I get a URL for the source for your editor? The one on kernel.org
doesn't compile, and probably hasn't for a long time.

[Yes, there is some (perverse) fun in telling people you use the very same
 editor than Linus Torvalds :-]&gt; 
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                     Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria              +56 32 654239
Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513
-
To: Horst von Brand <vonbrand@...>
Cc: Dave Jones <davej@...>, Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 8:47 pm

Oh, it compiles with trivial modifications. Not cleanly, but it works.

I put my git repo on 

	kernel.org:/pub/software/editors/uemacs/uemacs.git

but it will take a moment to mirror out. 

The "readme" says non-commercial only, but I asked Daniel Lawrence if it 
was ok to include it in commercial distributions a long time ago, and he 
said yes. Sadly, I've lost that email, so I don't have any paper trail for 

The thing is, it's not a wonderful editor. It's small, and good enough, 
but I really wished somebody wrote something that handled UTF-8, for 
example.  But I've got the keybindings hardcoded in my spine, so I can't 
ever change.

		Linus
-
To: Horst von Brand <vonbrand@...>
Cc: Dave Jones <davej@...>, Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Git Mailing List <git@...>
Date: Friday, September 30, 2005 - 8:10 pm

Gaah. You guys shamed me into actually trying to clean up the sources a 
bit.

It's by no means done, but some of it is even sparse-clean now.

I suspect there's a lot of it that still works mainly by luck than because 
it does anything right.

		Linus
-
To: Linus Torvalds <torvalds@...>
Cc: Horst von Brand <vonbrand@...>, Dave Jones <davej@...>, Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Git Mailing List <git@...>
Date: Friday, September 30, 2005 - 9:58 pm

I'd been trying my hand at the original version. Need to merge my changes
with yours...
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                     Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria              +56 32 654239
Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513
-
To: Horst von Brand <vonbrand@...>
Cc: Dave Jones <davej@...>, Anton Altaparmakov <aia21@...>, Jeff Garzik <jgarzik@...>, Git Mailing List <git@...>
Date: Sunday, October 2, 2005 - 9:03 pm

[ Sorry about the spam, most of you probably have never cared ]


Heh, now that I got into cleaning things up, I've also been actually 
fixing things that have long irritated me, but the code was just too messy 
for me, and my level of care wasn't high enough to overcome.

I fixed the "outputs binary data in the 128-159 range to the terminal" 
yesterday (which would quite possibly corrupt terminal state if trying to 
edit binary files), and today I added a "utf-8" mode.

The utf-8 mode is purely about the _terminal_ being in UTF-8. The actual 
editor is still very much byte-char based, but now it understands 8-bit 
input that comes in UTF8-encoded, and can output things in UTF-8 format. 

(Since UTF-8 is basically always used with Unicode, and the 8-bit subset 
of Unicode is iso-8859-1 aka Latin1, this is probably _less_ international 
than the non-UTF8, but hey, what can I say? If you want more, you'd need 
to teach uemacs about actual UTF8 contents).

The new "emacs.rc" will enable utf-8 mode automatically if $LANG contains 
the substring "UTF-8", since that _usually_ means that the terminal is in 
utf-8 mode. If it's wrong, you can add or delete the mode by hand (just 
like any global mode: Meta-X to add, Meta-Ctrl-X to delete).

Basically, it means that you don't have to switch the whole terminal into 
latin1 just to use uemacs.

			Linus
-
To: Linus Torvalds <torvalds@...>
Cc: <git@...>
Date: Thursday, September 29, 2005 - 9:54 pm

Wouldn't underneath pub/scm/ be more appropriate and gitweb

Hmph.  I vaguely recall in my distant past when I was still in
school, I did my own Japanization of microEmacs.  I wonder if
yours share the same root -- I do not have the source of my
version anymore so I have no way checking which ancient version
I mucked with.

-
To: Junio C Hamano <junkio@...>
Cc: <git@...>
Date: Thursday, September 29, 2005 - 10:36 pm

Well, I don't actually have write permissions to anything there except for 
udner the kernel tree. Also, I suspect there aren't all that many uemacs 
users out there, and anybody who isn't already a uemacs user probably 
shouldn't pick it up.

I don't think it has gotten any real development for the last ten years, 
and while it was arguably the best editor twenty years ago (not a lot of 
competition - what else worked on DOS, VMS and UNIX without being crazy 
and modal?) it's definitely showing its age.

So since I already had a uemacs subdirectory, I just put the git archive 

It's based on 3.9e, with some fixes by Petri Kutvonen at Helsinki 
University. With various (slight) modernizations by yours truly (eg posix 
termios support rather than the old "termio" stuff).

It _shouldn't_ be that hard to teach it about UTF-8, but every time I look 
at it I realize that there is a lot of stuff that should be improved. 
Converting it to K&amp;R, getting rid of the things that made sense in the 
80's but haven't made sense in ten years, re-indenting it (right now 
it's a strange mix of indentation styles)..

And if you open a binary file with it, it will literally spew binary 
characters to the tty, and can seriously confuse it due to the control 
chars. Or if you have a really long line, it can SIGSEGV on you. Cute.

But dammit, I'm not giving it up.

			Linus
-
To: Linus Torvalds <torvalds@...>
Cc: Dave Jones <davej@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 6:12 pm

Why don't you enable "enable-alternate-editor-implicitly" and set 
editor = "your-editor-of-choice" in the pine config?  It is integrated in 
a quite seamless way.

Best regards,

	Anton
-- 
Anton Altaparmakov &lt;aia21 at cam.ac.uk&gt; (replace at with @)
Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
Linux NTFS maintainer / IRC: #ntfs on irc.freenode.net
WWW: http://linux-ntfs.sf.net/ &amp; http://www-stu.christs.cam.ac.uk/~aia21/
-
To: Anton Altaparmakov <aia21@...>
Cc: <git@...>
Date: Thursday, September 29, 2005 - 7:19 pm

Anybody interested in adding entry to SubmittingPatches MUA
Specific Help section?


-
To: Junio C Hamano <junkio@...>
Cc: Anton Altaparmakov <aia21@...>, <git@...>
Date: Friday, September 30, 2005 - 8:22 am

Hi,


Did I miss something? Straight from my local git directory:

-- snip --

Pine
----

(Johannes Schindelin)

I don't know how many people still use pine, but for those poor
souls it may be good to mention that the quell-flowed-text is
needed for recent versions.

... the "no-strip-whitespace-before-send" option, too. AFAIK it
was introduced in 4.60.

-- snap --

Hth,
Dscho


-
To: Anton Altaparmakov <aia21@...>
Cc: Dave Jones <davej@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 6:25 pm

You think so? I don't find it that way.

With an alternate editor you have to edit the headers separately, and 
things like postponing a message suddenly turns into a big deal, not just 
a trivial ^O. In fact, almost everything gets more involved.

And pico _is_ pretty close to uemacs.

		Linus
-
To: Linus Torvalds <torvalds@...>
Cc: Dave Jones <davej@...>, Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 6:32 pm

Well using vim as alternate editor a postpone turns into a "ZZ" followed 
by ^O which I don't think is such a big deal but in general I agree that 
it adds hassle.  It is a shame that the text based headers do not appear 

I wouldn't know about that.  Never used uemacs.  I am a vim addict myself.  
(-;

Best regards,

	Anton
-- 
Anton Altaparmakov &lt;aia21 at cam.ac.uk&gt; (replace at with @)
Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
Linux NTFS maintainer / IRC: #ntfs on irc.freenode.net
WWW: http://linux-ntfs.sf.net/ &amp; http://www-stu.christs.cam.ac.uk/~aia21/
-
To: Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 5:33 pm

On Thu, Sep 29, 2005 at 02:26:42PM -0700, Linus Torvalds wrote:
 &gt;=20
 &gt;=20
 &gt; On Thu, 29 Sep 2005, Linus Torvalds wrote:
 &gt; &gt;Something like this?
 &gt;=20
 &gt; Gaah. Using a new pine version, and it is back to corrupting whitespace.
 &gt;=20
 &gt; Damn all mailer writers. Do they think email is just for grandma?

Of course - grandma uses pine, hackers use mutt ;)

*hides*

Best,
Elfyn

--=20
Elfyn McBratney
Gentoo Developer/Perl Team Lead
beu/irc.freenode.net                            http://dev.gentoo.org/~beu/
+------------O.o--------------------- http://dev.gentoo.org/~beu/pubkey.asc

PGP Key ID: 0x69DF17AD
PGP Key Fingerprint:
  DBD3 B756 ED58 B1B4 47B9  B3BD 8D41 E597 69DF 17AD
To: Jeff Garzik <jgarzik@...>
Cc: Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 3:08 pm

Unfortunately, following the instructions to the letter produces this:
oliver@oenone:~/linux-2.6&gt; git checkout
usage: read-tree (&lt;sha&gt; | -m &lt;sha1&gt; [&lt;sha2&gt; &lt;sha3&gt;])

	Regards
		Oliver
-
To: Oliver Neukum <oliver@...>
Cc: Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 3:34 pm

Yeah.  See if you still have a .git/HEADS that symlinks
to a valid place or not...?

jdl


-
To: Jon Loeliger <jdl@...>
Cc: Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 3:38 pm

oliver@oenone:~/linux-2.6&gt; ls -la .git/
insgesamt 14
drwxrwxr-x    6 oliver users  224 2005-09-29 21:06 .
drwxr-xr-x    3 oliver users   72 2005-09-29 20:45 ..
-rw-rw-r--    1 oliver users   19 2005-05-02 01:02 description
lrwxrwxrwx    1 oliver users   17 2005-09-29 21:06 HEAD -&gt; refs/heads/master
-rw-------    1 oliver users   32 2005-09-29 21:06 index
drwxrwxr-x    2 oliver users  104 2005-09-11 21:41 info
drwxr-xr-x  260 oliver users 6240 2005-09-29 19:05 objects
drwxrwxr-x    4 oliver users   96 2005-05-02 02:15 refs
drwxr-xr-x    2 oliver users   72 2005-09-29 21:05 remotes
oliver@oenone:~/linux-2.6&gt; ls -la .git/refs/
insgesamt 1
drwxrwxr-x  4 oliver users  96 2005-05-02 02:15 .
drwxrwxr-x  6 oliver users 224 2005-09-29 21:06 ..
drwxrwxr-x  2 oliver users  72 2005-09-29 19:05 heads
drwxrwxr-x  2 oliver users 600 2005-09-20 05:02 tags
oliver@oenone:~/linux-2.6&gt; ls -la .git/refs/heads/
insgesamt 4
drwxrwxr-x  2 oliver users 72 2005-09-29 19:05 .
drwxrwxr-x  4 oliver users 96 2005-05-02 02:15 ..
-rw-rw-r--  1 oliver users 41 2005-09-29 19:05 master
oliver@oenone:~/linux-2.6&gt; cat .git/refs/heads/master
aa55a08687059aa169d10a313c41f238c2070488

	Regards
		Oliver
-
To: Oliver Neukum <oliver@...>
Cc: <git@...>
Date: Friday, September 30, 2005 - 3:37 am

I wonder what that 32-byte small file called 'index' is doing
there.  If this is the kernel tree, its index file should weigh
about 1.7MB if I recall correctly.

-
To: Junio C Hamano <junkio@...>
Cc: Oliver Neukum <oliver@...>, <git@...>
Date: Friday, September 30, 2005 - 12:39 pm

32 bytes is what you get for an empty index (it's a 12-byte header, 
followed by a 20-byte SHA1 of the contents).

In general, such an index file it should be 100% equivalent to not having 
an index file at all.

		Linus
-
To: Junio C Hamano <junkio@...>
Cc: <git@...>
Date: Friday, September 30, 2005 - 4:36 am

I have no idea, but the instructions as stated didn't work for me.
Can you replicate that?

	Regards
		Oliver
-
To: Jeff Garzik <jgarzik@...>
Cc: Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 11:18 am

Can you update the date on that page to reflect your latest updates? 
I was digging around with git yesterday and had a few surprises...
like checking out the kernel and being told I modified a bunch of
files I never touched.

- Dave
-
To: David Leimbach <leimy2k@...>
Cc: Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 12:03 pm

The  KHGtG page is updated to September 29, 2005.



--
Don't be evil!!!
-
To: Alberto Patino <pato.lukaz@...>
Cc: Jeff Garzik <jgarzik@...>, Linux Kernel <linux-kernel@...>, Git Mailing List <git@...>
Date: Thursday, September 29, 2005 - 12:13 pm

Awesome!  Thanks. :-)  I'm looking at cogito and darcs-git for working
with v9fs and other goodies.

Dave
-
Previous thread: Re: Use of the -f flag on checkout by Matthias Urlichs on Thursday, September 29, 2005 - 3:09 am. (1 message)

Next thread: [PATCH] Old curl does not know about CURLOPT_SSLKEY by Johannes Schindelin on Thursday, September 29, 2005 - 12:19 pm. (2 messages)
speck-geostationary