# What's in git.git (stable frozen)

28 messages from 2008-01-30 to 2008-04-05. Participants: Junio C Hamano, Daniel Stenberg, Mike Hommey, Jakub Narebski, Johannes Schindelin, Jeff King, Shawn O. Pearce.
Thread: https://gitlist.dev/t/11800

## Junio C Hamano, 2008-01-30 08:32

Subject: What's in git.git (stable frozen)
Message-ID: <7v8x27iui1.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7v8x27iui1.fsf%40gitster.siamese.dyndns.org

```
There shouldn't be anything eye-popping.  Hopefully we can do
the final soonish, perhaps this weekend.

I may have made small touch-ups to a few commits, so please
check them over.

Thanks.

* The 'master' branch has these since v1.5.4-rc5

Brandon Casey (1):
  git-relink: avoid hard linking in objects/info directory

Bruno Ribas (1):
  gitweb: Make use of the $git_dir variable at sub
    git_get_project_description

Christian Couder (3):
  Documentation: config: add "browser.<tool>.path".
  Documentation: help: specify supported html browsers.
  instaweb: use 'browser.<tool>.path' config option if it's set.

Jakub Narebski (1):
  gitweb: Add info about $projectroot and $projects_list to gitweb/README

Jeff King (1):
  t9001: add missing && operators

Jim Meyering (1):
  fix doc typos

Johannes Schindelin (1):
  Add test for rebase -i with commits that do not pass pre-commit

Junio C Hamano (1):
  reflog-expire: Avoid creating new files in a directory inside readdir(3)
    loop

Yasushi SHOJI (1):
  gitweb: Convert generated contents to utf8 in commitdiff_plain

```

## Junio C Hamano, 2008-02-12 07:25

Subject: What's in git.git
Message-ID: <7vd4r24ox6.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vd4r24ox6.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7v8x27iui1.fsf@gitster.siamese.dyndns.org>

```
Config parser fixes are in 'maint', along with many other
minor fixes.

As promised, a handful topics that have been cooking in 'next'
have graduated to 'master'.

----------------------------------------------------------------

* The 'maint' branch has these fixes since v1.5.4.1

David Steven Tweed (1):
  Make git prune remove temporary packs that look like write failures

Frank Lichtenheld (1):
  config: Fix --unset for continuation lines

Gerrit Pape (1):
  builtin-commit: remove .git/SQUASH_MSG upon successful commit

James Bowes (1):
  Add a BuildRequires for gettext in the spec file.

Johannes Schindelin (2):
  bisect: allow starting with a detached HEAD
  Document that the default of branch.autosetupmerge is true

Jonas Fonseca (1):
  man pages are littered with .ft C and others

Junio C Hamano (24):
  git-pull documentation: fix markup
  archive-tar.c: guard config parser from value=NULL
  Add config_error_nonbool() helper function
  builtin-apply.c: guard config parser from value=NULL
  builtin-branch.c: guard config parser from value=NULL
  builtin-commit.c: guard config parser from value=NULL
  builtin-config.c: guard config parser from value=NULL
  builtin-log.c: guard config parser from value=NULL
  builtin-reflog.c: guard config parser from value=NULL
  builtin-show-branch.c: guard config parser from value=NULL
  builtin-tag.c: guard config parser from value=NULL
  connect.c: guard config parser from value=NULL
  convert.c: guard config parser from value=NULL
  diff.c: guard config parser from value=NULL
  git.c: guard config parser from value=NULL
  help.c: guard config parser from value=NULL
  http.c: guard config parser from value=NULL
  merge-recursive.c: guard config parser from value=NULL
  remote.c: guard config parser from value=NULL
  setup.c: guard config parser from value=NULL
  wt-status.c: guard config parser from value=NULL
  imap-send.c: guard config parser from value=NULL
  builtin-log.c: guard config parser from value=NULL
  config.c: guard config parser from value=NULL

Martin Koegler (1):
  pack-objects: only throw away data during memory pressure

Mike Hommey (1):
  Work around curl-gnutls not liking to be reinitialized

Miklos Vajna (1):
  builtin-gc.c: guard config parser from value=NULL

Uwe Kleine-König (1):
  rebase -i: accept -m as advertised in the man page


* The 'master' branch has these since v1.5.4 in addition to the
  above.

Alexandre Julliard (4):
  git.el: Support for showing unknown/ignored directories.
  git.el: Added a command to amend a commit.
  git.el: Check for existing buffers on revert.
  git.el: Better handling of subprocess errors.

Bruno Ribas (1):
  gitweb: Make use of the $git_dir variable at sub git_get_project_url_list

Christian Couder (1):
  config: add test cases for empty value and no value config variables.

Daniel Barkalow (2):
  Test :/string form for checkout
  Reduce the number of connects when fetching

David Brown (1):
  git-send-email: Generalize auto-cc recipient mechanism.

Eric Wong (1):
  git-svn: improve repository URL matching when following parents

Florian La Roche (1):
  gitweb: Make feed entries point to commitdiff view

James Bowes (1):
  Add a BuildRequires for gettext in the spec file.

Jason McMullan (1):
  Remove $Id: ..$ $Header: ..$ etc from +ko and +k files during import

Johannes Schindelin (3):
  Also use unpack_trees() in do_diff_cache()
  Fix "git clone" for git:// protocol
  Introduce the config variable pack.packSizeLimit

Johannes Sixt (1):
  Fix misuse of prefix_path()

Jonas Fonseca (1):
  man pages are littered with .ft C and others

Junichi Uekawa (1):
  git-blame.el: show the when, who and what in the minibuffer.

Junio C Hamano (12):
  index: be careful when handling long names
  Avoid running lstat(2) on the same cache entry.
  read-cache.c: fix a couple more CE_REMOVE conversion
  read-cache.c: introduce is_racy_timestamp() helper
  lazy index hashing
  Sane use of test_expect_failure
  test: reword the final message of tests with known breakages
  known breakage: revision range computation with clock skew
  fix misuse of prefix_path()
  Make error messages from cherry-pick/revert more sensible
  Define the project whitespace policy
  Update the main documentation (stale notes section)

Karl Hasselström (2):
  git-svn: Don't call git-repack anymore
  Let "git svn" run "git gc --auto" occasionally

Linus Torvalds (3):
  Make on-disk index representation separate from in-core one
  Make run_diff_index() use unpack_trees(), not read_tree()
  Create pathname-based hash-table lookup into index

Martin Koegler (2):
  git-fsck: report missing author/commit line in a commit as an error
  parse_object_buffer: don't ignore errors from the object specific parsing
    functions

Michael Witten (3):
  git-send-email: ssh/login style password requests
  git-send-email: SIG{TERM,INT} handlers
  git-send-email: Better handling of EOF

Mike Hommey (1):
  Work around curl-gnutls not liking to be reinitialized

Pierre Habouzit (2):
  git-describe: Add a --match option to limit considered tags.
  git-name-rev: add a --(no-)undefined option.

Rafael Garcia-Suarez (1):
  Make git-remote.perl "use strict" compliant

Robin Rosenberg (1):
  Improve bash prompt to detect various states like an unfinished merge

Simon Hausmann (2):
  git-p4: Fix submit user-interface.
  git-p4: Ensure the working directory and the index are clean before
    "git-p4 rebase"

Tim Stoakes (1):
  Add `git svn blame' command

Toby Allsopp (1):
  git-p4: Fix indentation from tab to spaces

Tommy Thorn (1):
  git-p4: Fix an obvious typo

```

## Daniel Stenberg, 2008-02-12 09:15

Subject: Re: What's in git.git
Message-ID: <Pine.LNX.4.64.0802121010590.416@yvahk3.pbagnpgbe.fr>
URL: https://gitlist.dev/e/Pine.LNX.4.64.0802121010590.416%40yvahk3.pbagnpgbe.fr
In-Reply-To: <7vd4r24ox6.fsf@gitster.siamese.dyndns.org>

```
On Mon, 11 Feb 2008, Junio C Hamano wrote:

> Mike Hommey (1):
>  Work around curl-gnutls not liking to be reinitialized

But why reinitialize libcurl at all in the first place? This "work-around"
should rather be the standard behavior since there should be no logical reason 
to re-initialize libcurl's global state during a git's execution.

Even though Mike correctly identified a libcurl bug, it also indirectly 
identified a git flaw: re-initialization with the curl_global_* functions is 
pointless and only wastes time.

```

## Mike Hommey, 2008-02-12 09:47

Subject: Re: What's in git.git
Message-ID: <20080212094755.GA17195@glandium.org>
URL: https://gitlist.dev/e/20080212094755.GA17195%40glandium.org
In-Reply-To: <Pine.LNX.4.64.0802121010590.416@yvahk3.pbagnpgbe.fr>

```
On Tue, Feb 12, 2008 at 10:15:28AM +0100, Daniel Stenberg <daniel@haxx.se> wrote:
> On Mon, 11 Feb 2008, Junio C Hamano wrote:
> 
> >Mike Hommey (1):
> > Work around curl-gnutls not liking to be reinitialized
> 
> But why reinitialize libcurl at all in the first place? This "work-around"
> should rather be the standard behavior since there should be no logical 
> reason to re-initialize libcurl's global state during a git's execution.
> 
> Even though Mike correctly identified a libcurl bug, it also indirectly 
> identified a git flaw: re-initialization with the curl_global_* functions 
> is pointless and only wastes time.

The important bit in the commit message reads:
> We work around this by removing the http_init and http_cleanup calls
> from get_refs_via_curl, replacing them with a transport->data
> initialization with the http_walker (which does http_init).

Which means there remains only one initialization. I agree it's not a
workaround anymore, but the word remained from the 3 previous attempts,
which were workarounds.

Mike

```

## Daniel Stenberg, 2008-02-12 11:35

Subject: Re: What's in git.git
Message-ID: <Pine.LNX.4.64.0802121234170.416@yvahk3.pbagnpgbe.fr>
URL: https://gitlist.dev/e/Pine.LNX.4.64.0802121234170.416%40yvahk3.pbagnpgbe.fr
In-Reply-To: <20080212094755.GA17195@glandium.org>

```
On Tue, 12 Feb 2008, Mike Hommey wrote:

> The important bit in the commit message reads:
>> We work around this by removing the http_init and http_cleanup calls
>> from get_refs_via_curl, replacing them with a transport->data
>> initialization with the http_walker (which does http_init).
>
> Which means there remains only one initialization. I agree it's not a 
> workaround anymore, but the word remained from the 3 previous attempts, 
> which were workarounds.

Ah, ok. Then I'll retract my comments! :-) Sorry for not checking out the 
actual code change, I only read the description!

```

## Junio C Hamano, 2008-02-17 03:56

Subject: What's in git.git (stable)
Message-ID: <7vir0o44mt.fsf_-_@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vir0o44mt.fsf_-_%40gitster.siamese.dyndns.org
In-Reply-To: <7vd4r24ox6.fsf@gitster.siamese.dyndns.org>

```
I'll hopefully soon apply the RPM spec patch from Kristian
Høgsberg to 'maint' and cut 1.5.4.2.  It will have bunch of
config parser related fixes among others.

On the 'master' front, a handful topics have graduated:

 - Brian Downing's compat/qsort;
 - Crhstian Couder's browser wrapper;
 - Paolo Bonzini's prepare-commit-msg hook;
 - Steffen Prohaska's safe-crlf;
 - "foo/" in .gitignore matches directory "foo".

Also, updated versions of gitk and git-gui are included.

Have fun.

----------------------------------------------------------------

* The 'maint' branch has these fixes since the last announcement.

Christian Couder (8):
  config: add test cases for empty value and no value config variables.
  diff.c: replace a 'strdup' with 'xstrdup'.
  diff.c: remove useless check for value != NULL
  config: add 'git_config_string' to refactor string config variables.
  Add "const" qualifier to "char *pager_program".
  Add "const" qualifier to "char *editor_program".
  Add "const" qualifier to "char *excludes_file".
  diff.c: add "const" qualifier to "char *cmd" member of "struct
    ll_diff_driver"

Daniel Barkalow (1):
  Validate nicknames of remote branches to prohibit confusing ones

Gerrit Pape (1):
  cvsimport: have default merge regex also match beginning of commit
    message

Jay Soffian (1):
  mailinfo: feed only one line to handle_filter() for QP input

Jeff King (2):
  status: suggest "git rm --cached" to unstage for initial commit
  commit: discard index after setting up partial commit

Johannes Schindelin (1):
  bisect: use verbatim commit subject in the bisect log

Johannes Sixt (1):
  upload-pack: Initialize the exec-path.

Junio C Hamano (6):
  Revert "pack-objects: only throw away data during memory pressure"
  Protect get_author_ident_from_commit() from filenames in work tree
  diff.c: fixup garding of config parser from value=NULL
  diff: Fix miscounting of --check output
  filter-branch: handle filenames that need quoting
  Documentation/git-reset:

Miklos Vajna (1):
  git clone -s documentation: force a new paragraph for the NOTE

Pieter de Bie (2):
  Documentation/git-reset: don't mention --mixed for selected-paths reset
  Documentation/git-reset: Add an example of resetting selected paths

Sergei Organov (1):
  git-cvsimport.txt: fix '-M' description.

Shawn O. Pearce (1):
  fast-import: check return value from unpack_entry()

Stelian Pop (1):
  hg-to-git: fix parent analysis

----------------------------------------------------------------

* The 'master' branch has these since the last announcement
  in addition to the above.

Brian Downing (1):
  compat: Add simplified merge sort implementation from glibc

Christian Couder (7):
  help: make 'git-help--browse' usable outside 'git-help'.
  help--browse: add '--config' option to check a config option for a
    browser.
  Rename 'git-help--browse.sh' to 'git-web--browse.sh'.
  instaweb: use 'git-web--browse' to launch browser.
  Documentation: instaweb: add 'git-web--browse' information.
  web--browse: Add a few quotes in 'init_browser_path'.
  Documentation: add 'git-web--browse.txt' and simplify other docs.

Christian Stimming (2):
  git-gui: (i18n) Fix a bunch of still untranslated strings.
  git-gui: Update German translation.

Dmitry Potapov (1):
  git-web--browse: do not start the browser with nohup

Gerrit Pape (1):
  gitk: properly deal with tag names containing / (slash)

Jay Soffian (3):
  git-gui: support Git Gui.app under OS X 10.5
  git-help--browse: improve browser support under OS X
  git-web--browse: fix misplaced quote in init_browser_path()

Jeff King (2):
  allow suppressing of global and system config
  fix config reading in tests

Johan Herland (2):
  Add testcase for 'git cvsexportcommit -w $cvsdir ...' with relative
    $GIT_DIR
  Fix 'git cvsexportcommit -w $cvsdir ...' when used with relative $GIT_DIR

Johannes Schindelin (1):
  Adjust .gitignore for 5884f1(Rename 'git-help--browse.sh'...)

Johannes Sixt (1):
  gitk: Heed the lines of context in merge commits

Junio C Hamano (7):
  Documentation/SubmittingPatches: Instruct how to use [PATCH] Subject
    header
  Documentation/SubmittingPatches: discuss first then submit
  Documentation/SubmittingPatches: What's Acked-by and Tested-by?
  gitignore(5): Allow "foo/" in ignore list to match directory "foo"
  gitignore: lazily find dtype
  .mailmap: adjust to a recent patch application glitch.
  Documentation/SubmittingPatches - a suggested patch flow

Linus Torvalds (1):
  gitk: learn --show-all output

Michele Ballabio (1):
  gitk: Fix "Key bindings" message

Paolo Bonzini (4):
  git-commit: support variable number of hook arguments
  git-commit: set GIT_EDITOR=: if editor will not be launched
  git-commit: Refactor creation of log message.
  git-commit: add a prepare-commit-msg hook

Shawn O. Pearce (7):
  git-gui: Automatically spell check commit messages as the user types
  git-gui: Paper bag fix bad string length call in spellchecker
  git-gui: Correct size of dictionary name widget in options dialog
  Include annotated tags in fast-import crash reports
  Include the fast-import marks table in crash reports
  Finish current packfile during fast-import crash handler
  Update fast-import documentation to discuss crash reports

Steffen Prohaska (2):
  safecrlf: Add mechanism to warn about irreversible crlf conversions
  gitk: Add checkbutton to ignore space changes

```

## Jakub Narebski, 2008-02-17 13:39

Subject: Re: What's in git.git (stable)
Message-ID: <m3d4qvbt40.fsf@localhost.localdomain>
URL: https://gitlist.dev/e/m3d4qvbt40.fsf%40localhost.localdomain
In-Reply-To: <7vir0o44mt.fsf_-_@gitster.siamese.dyndns.org>

```
Junio C Hamano <gitster@pobox.com> writes:

> On the 'master' front, a handful topics have graduated:
> 
>  - Brian Downing's compat/qsort;
>  - Crhstian Couder's browser wrapper;
>  - Paolo Bonzini's prepare-commit-msg hook;
>  - Steffen Prohaska's safe-crlf;
>  - "foo/" in .gitignore matches directory "foo".

Nice.

> Daniel Barkalow (1):
>   Validate nicknames of remote branches to prohibit confusing ones

Good one.

> Jeff King (2):
>   status: suggest "git rm --cached" to unstage for initial commit

Corner case, but good one.

>   commit: discard index after setting up partial commit

IIRC there was also request for proper solution; this was more a hack.

-- 
Jakub Narebski
Poland
ShadeHawk on #git

```

## Junio C Hamano, 2008-02-17 20:45

Subject: Re: What's in git.git (stable)
Message-ID: <7vtzk7xqg3.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vtzk7xqg3.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <m3d4qvbt40.fsf@localhost.localdomain>

```
Jakub Narebski <jnareb@gmail.com> writes:

>>   commit: discard index after setting up partial commit
>
> IIRC there was also request for proper solution; this was more a hack.

It is not a hack at all.

The more fundamental improvement was along the lines of what I
suggested soon after Kristian's initial round was posted, but
what the current code does is not wrong nor hack.  It is about a
partial commit after all and is not performance critical either.

```

## Johannes Schindelin, 2008-02-17 20:51

Subject: Re: What's in git.git (stable)
Message-ID: <alpine.LSU.1.00.0802172050090.30505@racer.site>
URL: https://gitlist.dev/e/alpine.LSU.1.00.0802172050090.30505%40racer.site
In-Reply-To: <7vtzk7xqg3.fsf@gitster.siamese.dyndns.org>

```
Hi,

On Sun, 17 Feb 2008, Junio C Hamano wrote:

> Jakub Narebski <jnareb@gmail.com> writes:
> 
> >>   commit: discard index after setting up partial commit
> >
> > IIRC there was also request for proper solution; this was more a hack.
> 
> It is not a hack at all.
> 
> The more fundamental improvement was along the lines of what I suggested 
> soon after Kristian's initial round was posted, but what the current 
> code does is not wrong nor hack.  It is about a partial commit after all 
> and is not performance critical either.

You mean: at this point, it is not necessary to be careful about the 
index, as the index that will be reloaded will already have the most 
recent timestamps, right?

Ciao,
Dscho

```

## Junio C Hamano, 2008-02-18 01:31

Subject: Re: What's in git.git (stable)
Message-ID: <7v3arrxd7q.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7v3arrxd7q.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <alpine.LSU.1.00.0802172050090.30505@racer.site>

```
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:

> On Sun, 17 Feb 2008, Junio C Hamano wrote:
>
>> The more fundamental improvement was along the lines of what I suggested 
>> soon after Kristian's initial round was posted, but what the current 
>> code does is not wrong nor hack.  It is about a partial commit after all 
>> and is not performance critical either.
>
> You mean: at this point, it is not necessary to be careful about the 
> index, as the index that will be reloaded will already have the most 
> recent timestamps, right?

I do not understand the question, but if you are referring to my
"not performance critical", I meant: "A partial commit is
never performance critical".

A partial commit is by its nature "oops, I earlier told you to
git add this and git add that but I did not mean that, eh, I do
mean it but not for this commit yet, sorry, I want to commit
changes to these paths first please and then I'll deal with the
earlier added paths in later commit perhaps.", i.e. very
interactive.  Its performance requirement is unlike an automated
script slurping hundreds of changes per minute applying exactly
the change it wants in each commit to the index and making
commits in rapid succession.

```

## Johannes Schindelin, 2008-02-18 01:34

Subject: Re: What's in git.git (stable)
Message-ID: <alpine.LSU.1.00.0802180133150.30505@racer.site>
URL: https://gitlist.dev/e/alpine.LSU.1.00.0802180133150.30505%40racer.site
In-Reply-To: <7v3arrxd7q.fsf@gitster.siamese.dyndns.org>

```
Hi,

On Sun, 17 Feb 2008, Junio C Hamano wrote:

> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> 
> > On Sun, 17 Feb 2008, Junio C Hamano wrote:
> >
> >> The more fundamental improvement was along the lines of what I suggested 
> >> soon after Kristian's initial round was posted, but what the current 
> >> code does is not wrong nor hack.  It is about a partial commit after all 
> >> and is not performance critical either.
> >
> > You mean: at this point, it is not necessary to be careful about the 
> > index, as the index that will be reloaded will already have the most 
> > recent timestamps, right?
> 
> I do not understand the question, but if you are referring to my "not 
> performance critical", I meant: "A partial commit is never performance 
> critical".
> 
> A partial commit is by its nature "oops, I earlier told you to git add 
> this and git add that but I did not mean that, eh, I do mean it but not 
> for this commit yet, sorry, I want to commit changes to these paths 
> first please and then I'll deal with the earlier added paths in later 
> commit perhaps.", i.e. very interactive.  Its performance requirement is 
> unlike an automated script slurping hundreds of changes per minute 
> applying exactly the change it wants in each commit to the index and 
> making commits in rapid succession.

Well, my workflow has lots of these moments.  I do not even feel "oops" 
about it.  More like "by the way, this needs committing _now_".

So I guess I'll be the guinea pig for this patch, and if it is too 
painful, I'll just go and fix it.

Ciao,
Dscho

```

## Jeff King, 2008-02-18 01:43

Subject: Re: What's in git.git (stable)
Message-ID: <20080218014301.GA6642@sigill.intra.peff.net>
URL: https://gitlist.dev/e/20080218014301.GA6642%40sigill.intra.peff.net
In-Reply-To: <alpine.LSU.1.00.0802180133150.30505@racer.site>

```
On Mon, Feb 18, 2008 at 01:34:50AM +0000, Johannes Schindelin wrote:

> Well, my workflow has lots of these moments.  I do not even feel "oops" 
> about it.  More like "by the way, this needs committing _now_".
> 
> So I guess I'll be the guinea pig for this patch, and if it is too 
> painful, I'll just go and fix it.

Just to be clear, this patch discards the cache after preparing the
partial index but before doing the status. This is in contrast to the
current 'master' and v1.5.4, which discard the cache _three_ times
during the status process.

So no, the performance will probably not be a big deal. It is better
than it has been in any released version of git.

-Peff

```

## Johannes Schindelin, 2008-02-18 02:05

Subject: Re: What's in git.git (stable)
Message-ID: <alpine.LSU.1.00.0802180204190.30505@racer.site>
URL: https://gitlist.dev/e/alpine.LSU.1.00.0802180204190.30505%40racer.site
In-Reply-To: <20080218014301.GA6642@sigill.intra.peff.net>

```
Hi,

On Sun, 17 Feb 2008, Jeff King wrote:

> On Mon, Feb 18, 2008 at 01:34:50AM +0000, Johannes Schindelin wrote:
> 
> > Well, my workflow has lots of these moments.  I do not even feel "oops" 
> > about it.  More like "by the way, this needs committing _now_".
> > 
> > So I guess I'll be the guinea pig for this patch, and if it is too 
> > painful, I'll just go and fix it.
> 
> Just to be clear, this patch discards the cache after preparing the
> partial index but before doing the status. This is in contrast to the
> current 'master' and v1.5.4, which discard the cache _three_ times
> during the status process.

... but then goes through big pains to reconstruct an index that needs as 
little updating as possible.

> So no, the performance will probably not be a big deal. It is better 
> than it has been in any released version of git.

I'll see, and report back.

IOW I think that your patch is necessary.  There might be some followup 
work to do for me, but at the moment, your patch fixes an existing bug.

Ciao,
Dscho

```

## Junio C Hamano, 2008-02-18 03:12

Subject: Re: What's in git.git (stable)
Message-ID: <7v3arrvtxm.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7v3arrvtxm.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <20080218014301.GA6642@sigill.intra.peff.net>

```
Jeff King <peff@peff.net> writes:

> .... This is in contrast to the
> current 'master' and v1.5.4, which discard the cache _three_ times
> during the status process.

The current 'master' meaning before 959ba67 (commit: discard
index after setting up partial commit), right?

I've been hoping that when this turns out to be Ok it would be
worth cherry-picking to 'maint' before 1.5.4.3.

```

## Jeff King, 2008-02-18 11:15

Subject: Re: What's in git.git (stable)
Message-ID: <20080218111504.GA7672@sigill.intra.peff.net>
URL: https://gitlist.dev/e/20080218111504.GA7672%40sigill.intra.peff.net
In-Reply-To: <7v3arrvtxm.fsf@gitster.siamese.dyndns.org>

```
On Sun, Feb 17, 2008 at 07:12:53PM -0800, Junio C Hamano wrote:

> Jeff King <peff@peff.net> writes:
> 
> > .... This is in contrast to the
> > current 'master' and v1.5.4, which discard the cache _three_ times
> > during the status process.
> 
> The current 'master' meaning before 959ba67 (commit: discard
> index after setting up partial commit), right?

Heh. Yes. The current 'master' meaning 'the current master when I wrote
that patch.' :)

-Peff

```

## Junio C Hamano, 2008-02-21 04:16

Subject: What's in git.git (stable)
Message-ID: <7vejb7ymep.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vejb7ymep.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7vir0o44mt.fsf_-_@gitster.siamese.dyndns.org>

```
With a handful of fixes and RPM specfile updates, we would
probably want to do 1.5.4.3 in a week or so from 'maint'.

A handful of new topics are now on 'master', and the ones still
on 'next' are maturing with necessary fixes.  I think we have
enough material for 1.5.5 when they graduate, and I am hoping to
do an rc1 sometime early to mid next month.  We'll see.

* The 'maint' branch has these fixes since the last announcement.

Gerrit Pape (1):
  git-clone.sh: properly configure remote even if remote's head is dangling

Jay Soffian (1):
  send-email: squelch warning due to comparing undefined $_ to ""

Jeff King (3):
  push: indicate partialness of error message
  Documentation/push: clarify matching refspec behavior
  push: document the status output

Junio C Hamano (1):
  GIT 1.5.4.2

Kristian Høgsberg (1):
  Rename git-core rpm to just git and rename the meta-pacakge to git-all.

Miklos Vajna (1):
  Documentation/git-stash: document options for git stash list

Pekka Kaitaniemi (1):
  Clarified the meaning of git-add -u in the documentation


* The 'master' branch has these since the last announcement
  in addition to the above.

Brandon Casey (1):
  Add compat/fopen.c which returns NULL on attempt to open directory

Bruno Ribas (1):
  gitweb: Use the config file to set repository owner's name.

Christian Couder (1):
  help.c: use 'git_config_string' to get 'help_default_format'.

Daniel Barkalow (1):
  API documentation for remote.h

David Kågedal (1):
  git.el: Set process-environment instead of invoking env

Jakub Narebski (3):
  gitweb: Fix displaying unchopped argument in chop_and_escape_str
  gitweb: Add new option -nohtml to quot_xxx subroutines
  gitweb: Fix bug in href(..., -replay=>1) when using 'pathinfo' form

Jay Soffian (1):
  Correct git-pull documentation

Jeff King (2):
  hard-code the empty tree object
  add--interactive: handle initial commit better

Johannes Schindelin (5):
  http-push: avoid invalid memory accesses
  http-push: do not get confused by submodules
  http-push: avoid a needless goto
  bisect view: check for MinGW32 and MacOSX in addition to X11
  cvsexportcommit: be graceful when "cvs status" reorders the arguments

Johannes Sixt (1):
  Technical documentation of the run-command API.

Junio C Hamano (5):
  setup: sanitize absolute and funny paths in get_pathspec()
  git-add: adjust to the get_pathspec() changes.
  builtin-mv: minimum fix to avoid losing files
  Sync with 1.5.4.2 and start 1.5.5 Release Notes
  sending errors to stdout under $PAGER

Lars Hjemli (1):
  Simplify setup of $GIT_DIR in git-sh-setup.sh

Linus Torvalds (1):
  Add "--show-all" revision walker flag for debugging

Marco Costalba (1):
  Avoid a useless prefix lookup in strbuf_expand()

Martin Koegler (15):
  deref_tag: handle return value NULL
  deref_tag: handle tag->tagged = NULL
  check return code of prepare_revision_walk
  read_object_with_reference: don't read beyond the buffer
  get_sha1_oneline: check return value of parse_object
  mark_blob/tree_uninteresting: check for NULL
  reachable.c::add_one_tree: handle NULL from lookup_tree
  list-objects.c::process_tree/blob: check for NULL
  check results of parse_commit in merge_bases
  process_tag: handle tag->tagged == NULL
  reachable.c::process_tree/blob: check for NULL
  revision.c: handle tag->tagged == NULL
  parse_commit: don't fail, if object is NULL
  check return value from parse_commit() in various functions
  peel_onion: handle NULL

Matthias Kestenholz (1):
  Add color.ui variable which globally enables colorization if set

Robin Rosenberg (1):
  Make blame accept absolute paths

```

## Junio C Hamano, 2008-02-25 08:42

Subject: What's in git.git (stable)
Message-ID: <7vfxvhjukt.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vfxvhjukt.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7vejb7ymep.fsf@gitster.siamese.dyndns.org>

```
By the end of this week, we will hopefully pretty much know what
will be (and what won't be) in 1.5.5.  Tonight's 'master'
contains Linus's "diff --dirstat" and my "apply ---whitespace"
enhancements, among other things.  The next 'master' update is
expected to be fairly big (see "What's cooking").

----------------------------------------------------------------

* The 'maint' branch has these fixes since v1.5.4.3

Shawn O. Pearce (3):
  Ensure 'make dist' compiles git-archive.exe on Cygwin
  Protect peel_ref fallback case from NULL parse_object result
  Correct fast-export file mode strings to match fast-import standard

----------------------------------------------------------------

* The 'master' branch has these since the last announcement
  in addition to the above.

Gerrit Pape (2):
  git-merge-index documentation: clarify synopsis
  builtin-tag.c: remove cruft

Jakub Narebski (1):
  gitweb: Fix bugs in git_search_grep_body: it's length(), not len()

Jay Soffian (2):
  send-email: fix In-Reply-To regression
  pull: pass --strategy along to to rebase

Jeff King (5):
  git_config_*: don't assume we are parsing a config file
  t3404: use configured shell instead of /bin/sh
  diff: fix java funcname pattern for solaris
  t9001: enhance fake sendmail test harness
  send-email: test compose functionality

Johannes Sixt (1):
  prefix_path: use is_absolute_path() instead of *orig == '/'

Junio C Hamano (18):
  builtin-apply.c: refactor small part that matches context
  builtin-apply.c: restructure "offset" matching
  builtin-apply.c: push match-beginning/end logic down
  builtin-apply.c: make it more line oriented
  builtin-apply.c: optimize match_beginning/end processing a bit.
  builtin-apply.c: mark common context lines in lineinfo structure.
  builtin-apply.c: clean-up apply_one_fragment()
  builtin-apply.c: simplify calling site to apply_line()
  builtin-apply.c: do not feed copy_wsfix() leading '+'
  builtin-apply.c: move copy_wsfix() function a bit higher.
  builtin-apply.c: pass ws_rule down to match_fragment()
  git-apply --whitespace=fix: fix whitespace fuzz introduced by previous
    run
  core.whitespace: cr-at-eol
  apply: do not barf on patch with too large an offset
  git-reset --hard and git-read-tree --reset: fix read_cache_unmerged()
  gitweb: Better chopping in commit search results
  ws_fix_copy(): move the whitespace fixing function to ws.c
  diff --dirstat: saner handling of binary and unmerged files

Linus Torvalds (5):
  Add "--dirstat" for some directory statistics
  Fix name re-hashing semantics
  Name hash fixups: export (and rename) remove_hash_entry
  Use helper function for copying index entry information
  Be more verbose when checkout takes a long time

Michele Ballabio (1):
  builtin-for-each-ref.c: fix typo in error message

Miklos Vajna (1):
  git-clean: handle errors if removing files fails

Santi Béjar (1):
  git-bundle.txt: Add different strategies to create the bundle

Shawn O. Pearce (1):
  Teach git-grep --name-only as synonym for -l

```

## Junio C Hamano, 2008-02-28 00:43

Subject: What's in git.git (stable)
Message-ID: <7vablloqqe.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vablloqqe.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7vfxvhjukt.fsf@gitster.siamese.dyndns.org>

```
For the next maintenance release v1.5.4.4, I made a few
cherry-picks from 'master' and also a merge down of a topic
branch that has been cooking there, to 'maint'.

On the 'master' front, many topics have been merged.  With a few
more topics that are still in 'next', we are pretty much done
feature-wise for the next feature release v1.5.5.

----------------------------------------------------------------
* The 'maint' branch has these fixes since the last announcement.

Brandon Casey (1):
  builtin-reflog.c: don't install new reflog on write failure

Bryan Donlan (1):
  Documentation/git-am.txt: Pass -r in the example invocation of rm -f
    .dotest

Caio Marcelo de Oliveira Filho (1):
  filter-branch documentation: non-zero exit status in command abort the
    filter

Carl Worth (1):
  Eliminate confusing "won't bisect on seeked tree" failure

Daniel Barkalow (2):
  Use a single implementation and API for copy_file()
  Don't use GIT_CONFIG in t5505-remote

Jay Soffian (2):
  rev-parse: fix potential bus error with --parseopt option spec handling
  send-email: fix In-Reply-To regression

Johan Herland (2):
  Add testcase for 'git cvsexportcommit -w $cvsdir ...' with relative
    $GIT_DIR
  Fix 'git cvsexportcommit -w $cvsdir ...' when used with relative $GIT_DIR

Johannes Schindelin (3):
  http-push: avoid invalid memory accesses
  http-push: do not get confused by submodules
  http-push: avoid a needless goto

Jonathan del Strother (1):
  Prompt to continue when editing during rebase --interactive

Miklos Vajna (2):
  Documentation/git-filter-branch: add a new msg-filter example
  Documentation/git svn log: add a note about timezones.

Steven Drake (1):
  timezone_names[]: fixed the tz offset for New Zealand.


----------------------------------------------------------------
* The 'master' branch has these since the last announcement
  in addition to the above.

Alexandre Julliard (1):
  git.el: Do not display empty directories.

Andreas Ericsson (1):
  pack-objects: Add runtime detection of online CPU's

Brandon Casey (2):
  builtin-reflog.c: don't install new reflog on write failure
  pack-objects: Print a message describing the number of threads for packing

Carl Worth (1):
  Eliminate confusing "won't bisect on seeked tree" failure

Daniel Barkalow (26):
  Allow callers of unpack_trees() to handle failure
  Add flag to make unpack_trees() not print errors.
  Send unpack-trees debugging output to stderr
  Discard "deleted" cache entries after using them to update the working tree
  Add "skip_unmerged" option to unpack_trees.
  Build-in merge-recursive
  Move create_branch into a library file
  Use diff -u instead of diff in t7201
  Library function to check for unmerged index entries
  Move code to clean up after a branch change to branch.c
  Build in checkout
  Clean up reporting differences on branch switch
  Add more tests for format-patch
  Improve message-id generation flow control for format-patch
  Export some email and pretty-printing functions
  Use ALLOC_GROW in remote.{c,h}
  Add a --cover-letter option to format-patch
  Add tests for extra headers in format-patch
  Fix format.headers not ending with a newline
  Combine To: and Cc: headers
  Support a --cc=<email> option in format-patch
  Resolve value supplied for no-colon push refspecs
  builtin-checkout.c: Remove unused prefix arguments in switch_branches path
  Add support for url aliases in config files
  Add API access to shortlog
  Improve collection of information for format-patch --cover-letter

Gerrit Pape (1):
  hash-object: cleanup handling of command line options

Jakub Narebski (2):
  gitweb: Better cutting matched string and its context
  Add '--fixed-strings' option to "git log --grep" and friends

Jay Soffian (3):
  builtin-checkout.c: fix possible usage segfault
  branch: optionally setup branch.*.merge from upstream local branches
  doc: documentation update for the branch track changes

Jeff King (3):
  help: use parseopt
  make alias lookup a public, procedural function
  help: respect aliases

Jim Meyering (1):
  Avoid unnecessary "if-before-free" tests.

Johannes Schindelin (2):
  xdl_merge(): make XDL_MERGE_ZEALOUS output simpler
  xdl_merge(): introduce XDL_MERGE_ZEALOUS_ALNUM

Johannes Sixt (2):
  start_command(), .in/.out/.err = -1: Callers must close the file descriptor
  start_command(), if .in/.out > 0, closes file descriptors, not the callers

Junio C Hamano (12):
  diff --relative: output paths as relative to the current subdirectory
  diff --relative: help working in a bare repository
  checkout: notice when the switched branch is behind or forked
  checkout: tone down the "forked status" diagnostic messages
  checkout: work from a subdirectory
  checkout: updates to tracking report
  Add merge-subtree back
  checkout: show progress when checkout takes long time while switching
    branches
  checkout: error out when index is unmerged even with -m
  url rewriting: take longest and first match
  git-apply --whitespace=fix: fix off by one thinko
  Revert "pack-objects: Print a message describing the number of threads
    for packing"

Sebastian Noack (1):
  git-svn: Don't prompt for client cert password everytime.

Shawn O. Pearce (5):
  Optimize peel_ref for the current ref of a for_each_ref callback
  Teach git-describe to use peeled ref information when scanning tags
  Avoid accessing non-tag refs in git-describe unless --all is requested
  Teach git-describe --exact-match to avoid expensive tag searches
  Use git-describe --exact-match in bash prompt on detached HEAD

Simon Hausmann (4):
  git-p4: Remove --log-substitutions feature.
  git-p4: Clean up git-p4 submit's log message handling.
  git-p4: Removed git-p4 submit --direct.
  git-p4: git-p4 submit cleanups.

Steffen Prohaska (2):
  t4014: Replace sed's non-standard 'Q' by standard 'q'
  Add tests for filesystem challenges (case and unicode normalization)

Tommy Thorn (1):
  git-p4: support exclude paths

Tor Arvid Lund (1):
  git-p4: Support usage of perforce client spec

```

## Junio C Hamano, 2008-03-03 02:06

Subject: What's in git.git (stable)
Message-ID: <7vod9wlfx5.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vod9wlfx5.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7vablloqqe.fsf@gitster.siamese.dyndns.org>

```
The 'master' has, aside from trivial fixes and enhancements, the following
topics that have been cooking:

 * "verify-pack" improvements;

 * "describe" that warns about a tag whose name and path contradict;

 * "describe --long" to show an tagged commit as $tag-0-$sha1;

 * "cvsimport -M" can be given more than once;

 * "gitweb" grep-search improvements;

A handful of the topics are meant also for 'maint'; after seeing no
complaints for a while they will be merged to 'maint' as part of the next
maintenance release v1.5.4.4.

----------------------------------------------------------------
* The 'maint' branch has these fixes since the last announcement.

Daniel Barkalow (1):
  Correct name of diff_flush() in API documentation

Gerrit Pape (1):
  templates/Makefile: don't depend on local umask setting

Junio C Hamano (1):
  Start preparing for 1.5.4.4

Mike Ralphson (1):
  Documentation cherry-pick: Fix cut-and-paste error

Rémi Vanicat (1):
  git.el: find the git-status buffer whatever its name is

Shawn O. Pearce (1):
  git-gui: Paper bag fix info dialog when no files are staged at commit

----------------------------------------------------------------
* The 'master' branch has these since the last announcement
  in addition to the above.

Alex Riesen (1):
  Fix builtin checkout crashing when given an invalid path

Christian Stimming (2):
  git-gui: (i18n) Add newly added translation strings to template.
  git-gui: Update German translation.

Clemens Buchacher (2):
  http-push: push <remote> :<branch> deletes remote branch
  http-push: add regression tests

Daniel Barkalow (3):
  Always use the current connection's remote ref list in git protocol
  Use diff_tree() directly in making cover letter
  Write index file on any checkout of files

Denis Cheng (1):
  cleanup: remove unused git_checkout_config

Frank Lichtenheld (1):
  gc: Add --quiet option

Jakub Narebski (4):
  gitweb: Change parse_commits signature to allow for multiple options
  gitweb: Simplify fixed string search
  Documentation: Remove --{min,max}-age option from git-log(1)
  gitweb: Mark first match when searching commit messages

Jean-Luc Herren (1):
  fast-import: exit with proper message if not a git dir

Jeff King (3):
  use build-time SHELL_PATH in test scripts
  rename: warn user when we have turned off rename detection
  allow git-am to run in a subdirectory

Johannes Schindelin (4):
  completion: support format-patch's --cover-letter option
  Fix make_absolute_path() for parameters without a slash
  format-patch: use the diff options for the cover letter, too
  format-patch: wrap cover-letter's shortlog sensibly

Johannes Sixt (2):
  daemon: send more error messages to the syslog
  daemon: ensure that base-path is an existing directory

Junio C Hamano (11):
  git-remote: do not complain on multiple URLs for a remote
  Fix "git log --merge --left-right"
  format-patch: remove a leftover debugging message
  tests: introduce test_must_fail
  Update draft release notes for 1.5.5
  t6024: move "git reset" to prepare for a test inside the test itself
  CodingGuidelines: spell out how we use grep in our scripts
  find_unique_abbrev(): redefine semantics
  Clean up find_unique_abbrev() callers
  diff-lib.c: constness strengthening
  diff: make sure work tree side is shown as 0{40} when different

Martin Koegler (10):
  add generic, type aware object chain walker
  builtin-fsck: move away from object-refs to fsck_walk
  Remove unused object-ref code
  builtin-fsck: reports missing parent commits
  builtin-fsck: move common object checking code to fsck.c
  add common fsck error printing function
  unpack-object: cache for non written objects
  unpack-objects: prevent writing of inconsistent objects
  index-pack: introduce checking mode
  receive-pack: use strict mode for unpacking objects

Michele Ballabio (1):
  git-gui: fix typo in lib/spellcheck.tcl

Mike Hommey (4):
  Set proxy override with http_init()
  Add test for git rebase --abort
  Documentation/git-rebase.txt: Add --strategy to synopsys
  git rebase --abort: always restore the right commit

Miklos Vajna (1):
  Improve t6029 to check the real "subtree" case

Nicolas Pitre (4):
  factorize revindex code out of builtin-pack-objects.c
  make verify_one_pack() a bit less wrong wrt packed_git structure
  fix unimplemented packed_object_info_detail() features
  add storage size output to 'git verify-pack -v'

Petr Baudis (1):
  gitweb: Clearly distinguish regexp / exact match searches

Philippe Bruhat (BooK (3):
  cvsimport: have default merge regex allow for dashes in the branch name
  cvsimport: allow for multiple -M options
  cvsimport: document that -M can be used multiple times

Ralf Wildenhues (1):
  Fix doc typos.

Santi Béjar (2):
  git-describe: --long shows the object name even for a tagged commit
  clone: support cloning full bundles

Sebastian Noack (1):
  git-svn: Don't prompt for client cert password everytime.

Shawn O. Pearce (7):
  git-gui: Ensure all spellchecker 'class' variables are initialized
  git-gui: Remove explicit references to 'aspell' in message strings
  git-gui: Only bind the spellcheck popup suggestion hook once
  git-gui: Catch and display aspell startup failures to the user
  git-gui: Gracefully display non-aspell version errors to users
  git-gui: Shorten Aspell version strings to just Aspell version number
  Teach git-describe to verify annotated tag names before output

Uwe Kleine-König (1):
  rev-list: add --branches, --tags and --remotes


```

## Junio C Hamano, 2008-03-06 06:02

Subject: What's in git.git (stable)
Message-ID: <7v8x0wie56.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7v8x0wie56.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7vod9wlfx5.fsf@gitster.siamese.dyndns.org>

```
I should probably do a 1.5.4.4 shortly from 'maint' to flush accumulated
fixes.  There is nothing major, but send-email regression fix deserves to
be delibered sooner to the end users.

On the 'master', we briefly had a faulty receive-pack to cause a small
pushes to fail, but that glitch has been reverted.  Also fixed was a
git-describe not quite working when your tags are packed (e.g. after
git-gc).

----------------------------------------------------------------
* The 'maint' branch has these fixes since the last announcement.

Björn Steinbrink (1):
  receive-pack: Initialize PATH to include exec-dir.

Gerrit Pape (1):
  git-merge.sh: better handling of combined --squash,--no-ff,--no-commit
    options

Jeff King (1):
  revert: actually check for a dirty index

Junio C Hamano (2):
  tests: introduce test_must_fail
  Update draft release notes for 1.5.4.4

Matthieu Moy (1):
  Fix incorrect wording in git-merge.txt.

Mike Hommey (1):
  Fix random crashes in http_cleanup()

Ping Yin (1):
  git-submodule: Fix typo 'url' which should be '$url'

Shawn O. Pearce (1):
  Fix 'git remote show' regression on empty repository in 1.5.4

----------------------------------------------------------------
* The 'master' branch has these since the last announcement
  in addition to the above.

Alex Riesen (1):
  Fix test for cleanup failure in t7300 on Windows

Junio C Hamano (8):
  Update draft release notes for 1.5.5
  git-describe: use tags found in packed-refs correctly
  describe: fix --long output
  describe: re-fix display_name()
  t6120 (describe): check --long properly
  Revert "receive-pack: use strict mode for unpacking objects"
  Revert "unpack-objects: prevent writing of inconsistent objects"
  fsck.c: fix bogus "empty tree" check

Martin Koegler (1):
  fetch-pack: check parse_commit/object results

Mike Hommey (1):
  t3407-rebase-abort.sh: Enhance existing tests, and add test for rebase
    --merge

SZEDER Gábor (2):
  bash: add git-branch options
  bash: git-branch -d and -m lists only local branches

Shawn O. Pearce (3):
  Don't allow git-describe failures to go unnoticed in t6120
  Test for packed tags in git-describe output
  Add git-describe test for "verify annotated tag names on output"

Simon Hausmann (1):
  git-p4: Fix import of changesets with file deletions


```

## Junio C Hamano, 2008-03-08 10:08

Subject: What's in git.git (stable)
Message-ID: <7v4pbhv87i.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7v4pbhv87i.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7v8x0wie56.fsf@gitster.siamese.dyndns.org>

```
There are about half a dozen topics that need to be merged to 'maint'
before 1.5.4.4 can happen, which hopefully will be mid next week.  They
are already in 'master' and we haven't heard about breakages with them.

It would be really nice to also have msgfmt issue on OSX resolved (e.g.
http://article.gmane.org/gmane.comp.version-control.git/76355) before
that.

----------------------------------------------------------------

* The 'maint' branch has these fixes since the last announcement.

Junio C Hamano (1):
  test-lib: fix TERM to dumb for test repeatability

Pierre Habouzit (1):
  unquote_c_style: fix off-by-one.

Shawn O. Pearce (1):
  git-gui: Gracefully fall back to po2msg.sh if msgfmt --tcl fails

Uwe Kleine-König (1):
  config.txt: refer to --upload-pack and --receive-pack instead of --exec


* The 'master' branch has these since the last announcement
  in addition to the above.

Alex Riesen (1):
  Do not use GUID on dir in git init --shared=all on FreeBSD

Brandon Casey (10):
  builtin-reflog.c: fix typo that accesses an unset variable
  reflog-delete: parse standard reflog options
  git-reflog: add option --rewrite to update reflog entries while expiring
  refs.c: make close_ref() and commit_ref() non-static
  git-reflog: add option --updateref to write the last reflog sha1 into the
    ref
  git-stash: add new 'drop' subcommand
  git-stash: add new 'pop' subcommand
  t3903-stash.sh: Add missing '&&' to body of testcase
  git-reflog.txt: Document new commands --updateref and --rewrite
  t3903-stash.sh: Add tests for new stash commands drop and pop

Charles Bailey (4):
  Tidy up git mergetool's backup file behaviour
  Changed an internal variable of mergetool to support custom commands
  Teach git mergetool to use custom commands defined at config time
  Add a very basic test script for git mergetool

Christian Couder (1):
  run-command: Redirect stderr to a pipe before redirecting stdout to
    stderr

Denis Cheng (3):
  whatchanged documentation: share description of --pretty with others
  specify explicit "--pretty=medium" with `git log/show/whatchanged`
  log/show/whatchanged: introduce format.pretty configuration

Johannes Schindelin (1):
  Teach "git reflog" a subcommand to delete single entries

Junio C Hamano (1):
  send-email: --no-signed-off-cc should suppress 'sob' cc


```

## Junio C Hamano, 2008-03-09 10:46

Subject: What's in git.git (stable)
Message-ID: <7vfxv0npis.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vfxv0npis.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7v4pbhv87i.fsf@gitster.siamese.dyndns.org>

```
Maintenance release 1.5.4.4 is out with accumulated fixes.

Except for a few remaining topics ("remote rewritten in C", and "saner
unpack_trees"), 'master' is almost feature complete for 1.5.5 and we will
hopefully soon enter -rc freeze.

----------------------------------------------------------------

* The 'maint' branch has these fixes since the last announcement.

Adeodato Simó (1):
  Really make the LF after reset in fast-import optional

Johannes Schindelin (1):
  cvsexportcommit: be graceful when "cvs status" reorders the arguments

Johannes Sixt (2):
  daemon: send more error messages to the syslog
  daemon: ensure that base-path is an existing directory

John Goerzen (1):
  Fix dcommit, rebase when rewriteRoot is in use

Junio C Hamano (2):
  Fix "git log --merge --left-right"
  GIT 1.5.4.4

Mike Hommey (1):
  Set proxy override with http_init()

Santi Béjar (1):
  ident.c: reword error message when the user name cannot be determined

Sebastian Noack (1):
  git-svn: Don't prompt for client cert password everytime.

----------------------------------------------------------------

* The 'master' branch has these since the last announcement
  in addition to the above.

Andy Whitcroft (1):
  shortlog: take the first populated line of the description

Carlos Rica (1):
  Make builtin-reset.c use parse_options.

Charles Bailey (2):
  git-mergetool documentaiton: show toolnames in typewriter font
  merge-tool documentation: describe custom command usage

Dmitry Potapov (2):
  Make private quote_path() in wt-status.c available as
    quote_path_relative()
  git-clean: correct printing relative path

Jakub Narebski (1):
  gitweb: Fix and simplify pickaxe search

Jeff King (1):
  Add a test for read-tree -u --reset with a D/F conflict

Junio C Hamano (10):
  describe --always: fall back to showing an abbreviated object name
  am: read from the right mailbox when started from a subdirectory
  am: remove support for -d .dotest
  am: --rebasing
  get_pathspec(): die when an out-of-tree path is given
  Revert part of 744dacd (builtin-mv: minimum fix to avoid losing files)
  Revert part of 1abf095 (git-add: adjust to the get_pathspec() changes)
  Revert part of d089eba (setup: sanitize absolute and funny paths in
    get_pathspec())
  git-clean: add tests for relative path
  filter-branch: handle "disappearing tree" case correctly in subdir filter

Mark Levedahl (1):
  git-submodule - Allow adding a submodule in-place

Michal Rokos (1):
  Add compat/snprintf.c for systems that return bogus

Pierre Habouzit (2):
  parse-opt: bring PARSE_OPT_HIDDEN and NONEG to git-rev-parse --parseopt
  parse-options: new option type to treat an option-like parameter as an
    argument.

Shawn O. Pearce (11):
  Remove unused variable in builtin-fetch find_non_local_tags
  Remove unnecessary delaying of free_refs(ref_map) in builtin-fetch
  Ensure tail pointer gets setup correctly when we fetch HEAD only
  Allow builtin-fetch's find_non_local_tags to append onto a list
  Free the path_lists used to find non-local tags in git-fetch
  Teach upload-pack to log the received need lines to an fd
  Make git-fetch follow tags we already have objects for sooner
  Teach git-fetch to grab a tag at the same time as a commit
  git-pack-objects: Automatically pack annotated tags if object was packed
  Teach fetch-pack/upload-pack about --include-tag
  Teach git-fetch to exploit server side automatic tag following


```

## Junio C Hamano, 2008-03-14 09:11

Subject: What's in git.git (stable)
Message-ID: <7vod9hr7p1.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vod9hr7p1.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7vfxv0npis.fsf@gitster.siamese.dyndns.org>

```
We still have remaining fixes and a handful backports (cherry-picks) from
'master' to 'maint', and we would probably need v1.5.4.5 shortly.

On the 'master' front, we have git-gui updates, more bash completion, and
a few recent graduates (rewrite of unpack_trees(), reimplementation of
git-remote).

----------------------------------------------------------------

* The 'maint' branch has these fixes since the last announcement.

Andy Whitcroft (1):
  shortlog: take the first populated line of the description

Clemens Buchacher (1):
  merge-recursive: handle file mode changes

Jakub Narebski (1):
  gitweb: Fix bug in href(..., -replay=>1) when using 'pathinfo' form

Jeff King (1):
  t0021: tr portability fix for Solaris

Johannes Schindelin (3):
  launch_editor(): allow spaces in the filename
  git fetch: Take '-n' to mean '--no-tags'
  merge-file: handle empty files gracefully

Junio C Hamano (3):
  filter-branch: handle "disappearing tree" case correctly in subdir filter
  git-pull documentation: warn about the option order
  quiltimport: fix misquoting of parsed -p<num> parameter

Marc-Andre Lureau (2):
  git-svn: fix find-rev error message when missing arg
  git-cvsimport: fix merging with remote parent branch

Mike Hommey (1):
  git rebase --abort: always restore the right commit

Pierre Habouzit (1):
  git-quiltimport: better parser to grok "enhanced" series files.

Vineet Kumar (1):
  Minor wording changes in the keyboard descriptions in git-add
    --interactive.

----------------------------------------------------------------

* The 'master' branch has these since the last announcement
  in addition to the above.

Adam Piątyszek (1):
  git-gui: Add option for changing the width of the commit message text box

Christian Couder (2):
  web--browse: use custom commands defined at config time
  Documention: web--browse: add info about "browser.<tool>.cmd" config var

Johannes Schindelin (9):
  path-list: add functions to work with unsorted lists
  parseopt: add flag to stop on first non option
  Test "git remote show" and "git remote prune"
  Make git-remote a builtin
  builtin-remote: prune remotes correctly that were added with --mirror
  remote show: Clean up connection correctly if object fetch wasn't done
  remote: fix "update [group...]"
  builtin remote rm: remove symbolic refs, too
  gc: call "prune --expire 2.weeks.ago" by default

Junio C Hamano (6):
  merge-recursive: split low-level merge functions out.
  expose a helper function peel_to_type().
  traverse_trees_recursive(): propagate merge errors up
  git-gui: Simplify MSGFMT setting in Makefile
  Documentation/config: typofix
  read-tree() and unpack_trees(): use consistent limit

Kevin Ballard (1):
  bash: Properly quote the GIT_DIR at all times to fix subdirectory paths
    with spaces

Linus Torvalds (11):
  Add 'df_name_compare()' helper function
  Make 'traverse_tree()' use linked structure rather than 'const char
    *base'
  Add return value to 'traverse_tree()' callback
  Make 'traverse_trees()' traverse conflicting DF entries in parallel
  Move 'unpack_trees()' over to 'traverse_trees()' interface
  Fix tree-walking compare_entry() in the presense of --prefix
  Add 'const' where appropriate to index handling functions
  Make 'unpack_trees()' take the index to work on as an argument
  Make 'unpack_trees()' have a separate source and destination index
  unpack_trees(): minor memory leak fix in unused destination index
  unpack_trees(): fix diff-index regression.

Michal Rokos (1):
  autoconf: Test FREAD_READS_DIRECTORIES

Nicolas Pitre (1):
  pack-objects: proper pack time stamping with --max-pack-size

Philipp A. Hartmann (1):
  git-gui: if a background colour is set, set foreground colour as well

SZEDER Gábor (7):
  bash: remove unnecessary conditions when checking for subcommands
  bash: refactor searching for subcommands on the command line
  bash: add new 'git stash' subcommands
  bash: add 'git svn' subcommands and options
  bash: use __gitdir when completing 'git rebase' options
  bash: fix long option with argument double completion
  update 'git rebase' documentation

Samuel Tardieu (1):
  "remote update": print remote name being fetched from

Shawn O. Pearce (1):
  bash: Remove completion of core.legacyheaders option

Teemu Likonen (1):
  bash: Add more long options to be completed with "git --<TAB>"

eric miao (1):
  git-gui: translate the remaining messages in zh_cn.po to chinese

```

## Junio C Hamano, 2008-03-23 10:08

Subject: What's in git.git (stable)
Message-ID: <7veja192i4.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7veja192i4.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7vod9hr7p1.fsf@gitster.siamese.dyndns.org>

```
With a few late topics came quite a few regression fixes to make us ready
for -rc1.

 * gitk, git-gui and git-p4 have been updated.

 * "git gc --auto" annoyance is hopefully reduced away.

 * Breakage in automated tag following by git-fetch rewritten in C has
   hopefully been fixed.

 * Quite a few portability improvements from Solaris porting efforts.

 * "git remote show" does not talk about symrefs anymore.

 * "git help" updates to plug in more backends.

 * "git submodule summary" to show symmetric differences between commits
   in submodules.

---

* The 'maint' branch has these fixes since the last announcement.

Bernt Hansen (1):
  git-new-workdir: Share SVN meta data between work dirs and the repository

Eric Wong (1):
  git-svn: don't blindly append '*' to branch/tags config

Jonas Fonseca (1):
  Make man page building quiet when DOCBOOK_XSL_172 is defined

Junio C Hamano (3):
  format-patch: generate MIME header as needed even when there is
    format.header
  rebase -m: do not trigger pre-commit verification
  Start draft ReleaseNotes for 1.5.4.5

Linus Torvalds (1):
  rev-parse: fix meaning of rev~ vs rev~0.


* The 'master' branch has these since the last announcement
  in addition to the above.

Alex Riesen (1):
  git-gui: update russian translation

Brandon Casey (2):
  builtin-gc.c: allow disabling all auto-gc'ing by assigning 0 to gc.auto
  t/t7003-filter-branch.sh: use test_must_fail rather than '!'

Christian Couder (5):
  help: add "man.viewer" config var to use "woman" or "konqueror"
  Documentation: help: describe 'man.viewer' config variable
  help: implement multi-valued "man.viewer" config option
  Documentation: help: explain 'man.viewer' multiple values
  help: warn if specified 'man.viewer' is unsupported, instead of erroring
    out

Daniel Barkalow (4):
  Write diff output to a file in struct diff_options
  Tighten refspec processing
  Fix t3200 config
  Fix tag following

David Aguilar (1):
  gitk: Don't show local changes when we there is no work tree

Eyvind Bernhardsen (2):
  fast-import: Allow "reset" to delete a new branch without error
  fast-import: Document the effect of "merge" with no "from" in a commit

Jeff King (15):
  gitk: make autoselect optional
  tr portability fixes
  t0050: perl portability fix
  more tr portability test script fixes
  grep portability fix: don't use "-e" or "-q"
  remove use of "tail -n 1" and "tail -1"
  add test_cmp function for test scripts
  t4020: don't use grep -a
  t6000lib: tr portability fix
  add NO_EXTERNAL_GREP build option
  filter-branch: don't use xargs -0
  filter-branch: use $SHELL_PATH instead of 'sh'
  t9112: add missing #!/bin/sh header
  t7505: use SHELL_PATH in hook
  t6000lib: re-fix tr portability

Johannes Schindelin (1):
  remote show: do not show symbolic refs

Johannes Sixt (1):
  git-submodule summary: fix that some "wc" flavors produce leading spaces

Jonas Fonseca (1):
  shortlog: do not require to run from inside a git repository

Junio C Hamano (15):
  Makefile: DIFF_OBJS is not special at all these days
  Makefile: flatten enumeration of headers, objects and programs
  Documentation/git-help: typofix
  Redo "add test_cmp function for test scripts"
  git-gui: Improve directions regarding POT update in po/README
  Resurrect git-rerere to contrib/examples
  Update draft release notes for 1.5.5
  t1000: use "test_must_fail git frotz", not "! git frotz"
  git-merge-one-file: fix longstanding stupid thinko
  Test: catch if trash cannot be removed
  Add tests to catch problems with un-unlinkable symlinks
  Fix read-tree not to discard errors
  remote.c: Fix overtight refspec validation
  gc --auto: raise default auto pack limit from 20 to 50
  GIT 1.5.5-rc1

Kevin Ballard (4):
  Add --reverse to the git-rev-list usage string
  Document the sendemail.smtpserverport config variable
  Don't try and percent-escape existing percent escapes in git-svn URIs
  Make git-svn tests behave better on OS X

Kristian Høgsberg (1):
  wt-status.c: no need for dup() dance anymore

Linus Torvalds (4):
  Fix recent 'unpack_trees()'-related changes breaking 'git stash'
  Don't update unchanged merge entries
  Fix possible Solaris problem in 'checkout_entry()'
  Make revision limiting more robust against occasional bad commit dates

Marius Storm-Olsen (1):
  git-p4: Optimize the fetching of data from perforce.

Michele Ballabio (4):
  gitk: Mark another string for translation
  git-gui: update Italian translation
  gitk: initial Italian translation
  git-gui: remove spurious "fuzzy" attributes in po/it.po

Miklos Vajna (3):
  Update Hungarian translation. 100% completed.
  git-gui: Updated Hungarian translation (e5fba18)
  Documentation/git-merge: document subtree strategy.

Nanako Shiraishi (2):
  git-gui: Update Japanese translation
  git-gui: Update Japanese translation

Nicolas Pitre (1):
  make it easier for people who just want to get rid of 'git gc --auto'

Paul Mackerras (3):
  gitk: Only restore window size from ~/.gitk, not position
  gitk: Avoid Tcl error when switching views
  gitk: Default to using po2msg.sh if msgfmt doesn't grok --tcl, -l and -d

Pekka Kaitaniemi (1):
  gitk: Add horizontal scrollbar to the diff view

Peter Karlsson (2):
  git-gui: Regenerated po template and merged translations with it
  git-gui: updated Swedish translation

Ping Yin (5):
  git-submodule summary: code framework
  git-submodule summary: show commit summary
  git-submodule summary: limit summary size
  git-submodule summary: documentation
  git-submodule summary: test

Ralf Wildenhues (1):
  Improve description of git filter-branch.

Shawn Bohrer (2):
  git-p4: Unset P4DIFF environment variable when using 'p4 -du diff'
  git-p4: Use P4EDITOR environment variable when set

Shawn O. Pearce (2):
  git-gui: Don't translate the special Apple menu
  git-gui: Adjusted Japanese translation to updated POT

Yann Dirson (1):
  Add an --argscmd flag to get the list of refs to show

```

## Junio C Hamano, 2008-03-28 01:45

Subject: What's in git.git (stable)
Message-ID: <7vk5jn7hb2.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vk5jn7hb2.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7veja192i4.fsf@gitster.siamese.dyndns.org>

```
Again with a handful fixes, the most important of which is for regression
introduced in 1.5.4 to "git fetch" (if you are using .git/branches/it to
name your remote repositories, "git fetch it" should update your local
"it" branch but it doesn't since the breakage), maybe we would need
another maintenance branch soon from 'maint'.

With fixes to a handful regressions in the changes that happened during
the 1.5.5 cycle, 'master' is nearling -rc2, which hopefully will happen
soon.  There still are one or two topics we may want to merge from 'next',
but at this point both testers and developers are encouraged to switch to
'master' if you have been using 'next' for your real work to catch the
last minute glitches.

----------------------------------------------------------------

* The 'maint' branch has these fixes since the last announcement.

Brandon Casey (1):
  t/t3800-mktag.sh: use test_must_fail rather than '!'

Daniel Barkalow (2):
  Tighten refspec processing
  Fix branches file configuration

Guanqun Lu (1):
  Fix the wrong output of `git-show v1.3.0~155^2~4` in documentation.

Jeff King (1):
  Documentation: clarify use of .git{ignore,attributes} versus .git/info/*

Junio C Hamano (2):
  git-fetch test: test tracking fetch results, not just FETCH_HEAD
  Update draft release notes for 1.5.4.5


* The 'master' branch has these since the last announcement
  in addition to the above.

Dirk Süsserott (1):
  Documentation: git-tag '-m'/'-F' implies '-a'

Frank Lichtenheld (1):
  t9600-cvsimport.sh: set HOME before checking for cvsps availability

Gerrit Pape (1):
  imap-send: properly error out if imap.host is not set in config

Guanqun Lu (1):
  Fix the wrong output of `git-show v1.3.0~155^2~4` in documentation.

Johannes Schindelin (2):
  RelNotes: mention checkout/branch's --track option, too
  init: show "Reinit" message even in an (existing) empty repository

Johannes Sixt (1):
  builtin-remote: Fix missing newline at end of listing of pushed branches

Julian Phillips (1):
  Documentation/git-checkout: Update summary to reflect current abilities

Junio C Hamano (3):
  refspec: allow colon-less wildcard "refs/category/*"
  test_must_fail: 129 is a valid error code from usage()
  Update draft release notes for 1.5.5

SZEDER Gábor (1):
  Always set *nongit_ok in setup_git_directory_gently()

```

## Junio C Hamano, 2008-03-31 08:39

Subject: What's in git.git (stable)
Message-ID: <7v8wzzmgmf.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7v8wzzmgmf.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7vk5jn7hb2.fsf@gitster.siamese.dyndns.org>

```
A handful fixes are in 'master', and a few topics are still in 'next' as I
ran out of time this weekend.

* The 'master' branch has these since the last announcement.

Bryan Donlan (1):
  Silence cpio's "N blocks" output when cloning locally

Eric Wong (1):
  git-svn: remove redundant slashes from show-ignore

Junio C Hamano (4):
  builtin-prune: protect objects listed on the command line
  Add corner case tests for diff-index and diff-files
  diff-index: careful when inspecting work tree items
  diff-files: careful when inspecting work tree items

Marius Storm-Olsen (1):
  git-p4: Handle Windows EOLs properly after removal of p4 submit template
    handling.

Michele Ballabio (3):
  parse-options.c: introduce OPT_DATE
  Add tests for git-prune
  builtin-prune.c: use parse_options()

```

## Junio C Hamano, 2008-04-04 18:24

Subject: What's in git.git (stable)
Message-ID: <7vbq4pzde4.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vbq4pzde4.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <7v8wzzmgmf.fsf@gitster.siamese.dyndns.org>

```
* The 'master' branch has these since the last announcement and we are now
  at 1.5.5-rc3.  The real 1.5.5 hopefully this weekend.

Brandon Casey (2):
  mktag.c: improve verification of tagger field and tests
  mktag.c: tweak validation of tagger field and adjust test script

Christian Couder (1):
  help: Add a missing OPT_END().

Damien Diederen (7):
  cvsserver: Respond to the 'editors' and 'watchers' commands
  cvsserver: Only print the file part of the filename in status header
  cvsserver: Do not include status output for subdirectories if -l is
    passed
  cvsserver: Add a few tests for 'status' command
  cvsserver: Implement update -p (print to stdout)
  cvsserver: Add test for update -p
  cvsserver: Use the user part of the email in log and annotate results

Johannes Sixt (3):
  filter-branch: Test renaming directories in a tree-filter
  verify-tag: Clean up the temporary file if gpg cannot be started.
  t7004-tag: Skip more tests if gpg is not available.

Jonathan del Strother (1):
  git-gui: Add shortcut keys for Show More/Less Context

Josh Elsasser (1):
  Allow git-cvsserver database table name prefix to be specified.

Junio C Hamano (2):
  Accept git aliases outside a git repository
  GIT 1.5.5-rc3

Paolo Bonzini (1):
  git-cvsserver: handle change type T

Shawn O. Pearce (1):
  git-gui 0.10

Teemu Likonen (1):
  Describe the bug in handling filenames with funny characters in 'git add
    -i'

veillette@yahoo.ca (1):
  filter-branch: Fix renaming a directory in the tree-filter

```

## Shawn O. Pearce, 2008-04-05 03:13

Subject: Re: What's in git.git (stable)
Message-ID: <20080405031341.GR10274@spearce.org>
URL: https://gitlist.dev/e/20080405031341.GR10274%40spearce.org
In-Reply-To: <7vbq4pzde4.fsf@gitster.siamese.dyndns.org>

```
Junio C Hamano <gitster@pobox.com> wrote:
> * The 'master' branch has these since the last announcement and we are now
>   at 1.5.5-rc3.  The real 1.5.5 hopefully this weekend.
...
> Shawn O. Pearce (1):
>   git-gui 0.10

0.10 is a dud on Linux.  My master branch has a bug fix, but I'm
considering bringing in Michele's patch before tagging 0.10.1.

So 0.10.1, most likely tagged in a few hours, should be in 1.5.5.
Otherwise Linux users of git-gui will be sort of pissed.

Damn.

-- 
Shawn.

```
