git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] filter-branch -d: Export GIT_DIR earlier

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Feb 16, 2009, 13:42 UTC
Message-ID
<alpine.DEB.1.00.0902161441190.6289@intel-tinevez-2-302>
In-Reply-To
<20090216130951.GA3769@lars.home.noschinski.de>
Hi,
On Mon, 16 Feb 2009, Lars Noschinski wrote:
Show 18 quoted lines
> The improved error handling catches a bug in filter-branch when using
> -d pointing to a path outside any git repository:
> 
> $ mkdir foo
> $ cd foo
> $ git init
> $ touch bar
> $ git add bar
> $ git commit -m bar
> $ cd ..
> $ git clone --bare foo
> $ cd foo.git
> $ git filter-branch -d /tmp/filter master
> fatal: Not a git repository (or any of the parent directories): .git
> 
> This error message comes from git for-each-ref in line 224. GIT_DIR is
> set correctly by git-sh-setup (to the foo.git repository), but not
> exported (yet).
Thanks.
Show 7 quoted lines
> ---
> 
> This fix is not yet ready for commit, as it lacks a test case.
> 
> Writing a test case for this bug, I wonder about the preferred way to use a
> directory outside any git repository in a test: Using some directory below
> git/t/ will not work, as (in most cases) git is a git repository.

How about using a filter-branch call with a filter that echoes GIT_DIR into a file, then fails, and then checking the exact contents of GIT_DIR?

Ciao, Dscho

Previous: Lars NoschinskiNext: Lars Noschinski
Message 2 of 5 in “filter-branch -d: Export GIT_DIR earlier”
  1. filter-branch -d: Export GIT_DIR earlierLars Noschinski, Feb 16, 2009
  2. Johannes SchindelinFeb 16, 2009
  3. Lars NoschinskiFeb 16, 2009
  4. Johannes SchindelinFeb 16, 2009
  5. Lars NoschinskiFeb 17, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.