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

Re: [PATCH v2] Fix fetch/pull when run without --update-head-ok

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Oct 13, 2008, 18:12 UTC
Message-ID
<alpine.DEB.1.00.0810132001230.22125@pacific.mpi-cbg.de.mpi-cbg.de>
In-Reply-To
<7vod1obmlh.fsf@gitster.siamese.dyndns.org>
Hi,

thanks for doing the due diligence that I should have done (but I ran out of time).

On Mon, 13 Oct 2008, Junio C Hamano wrote:
> The parts of the tests you fixed came from these:
> 
>     6738c81 (send-pack: segfault fix on forced push, 2007-11-08)

This really wants to make sure that no objects are shared or hard-linked between the repository in "trash directory/" and the one in its subdirectory "another/". It predates "test_must_fail", too, it seems.

It never touches the working directory "another/", so using --update-head-ok is okay.

>     4ebc914 (builtin-remote: prune remotes correctly ..., 2008-02-29)
This tests "git remote add"'s --mirror option.
It never touches the working directory either.
>     4942025 (t5510: test "git fetch" following tags minimally, 2008-09-21)

This test is actually not fixed, but contains two test cases for the issue the commit fixes.

>     03db452 (Support gitlinks in fast-import., 2008-07-19)

This creates an empty repository for tests to fast-import, and fetches into the current (not yet existing) branch.

I actually understand now why the tests started failing: the change from resolve_ref() to get_branch() as requested by Daniel are at fault: get_branch() does not check if the branch has an initial commit.

I am actually regretting making this change. Daniel, do you agree that it might be better to change back to resolve_ref(), so that the initial complaint (IIRC Han-Wen git pull'ed into a freshly initialized repository with that utterly bogus "git pull origin master:master" line) is not re-raised?

> With these verified, I think I should move the "Strangely" comment to 
> the commit log message proper (after stripping "Strangely" part -- it is 
> not strange anymore after we understand why).

The only test that would need fixing after reverting back to resolve_ref() would be the "remote add --mirror" thing, which I think should be fine.

Ciao, Dscho

Previous: Junio C HamanoNext: Daniel Barkalow
Message 12 of 24 in “fetch: refuse to fetch into the current branch in a non-bare repository”
  1. fetch: refuse to fetch into the current branch in a non-bare repositoryJohannes Schindelin, Oct 11, 2008
  2. Junio C HamanoOct 11, 2008
  3. Shawn O. PearceOct 12, 2008
  4. Johannes SchindelinOct 13, 2008
  5. Shawn O. PearceOct 12, 2008
  6. Daniel BarkalowOct 12, 2008
  7. Fix fetch/pull when run without --update-head-okJohannes Schindelin, Oct 13, 2008
  8. Shawn O. PearceOct 13, 2008
  9. Johannes SchindelinOct 13, 2008
  10. Junio C HamanoOct 13, 2008
  11. Junio C HamanoOct 13, 2008
  12. Johannes SchindelinOct 13, 2008
  13. Daniel BarkalowOct 13, 2008
  14. Johannes SchindelinOct 14, 2008
  15. Shawn O. PearceOct 14, 2008
  16. Daniel BarkalowOct 14, 2008
  17. Johannes SchindelinOct 14, 2008
  18. Daniel BarkalowOct 14, 2008
  19. Johannes SchindelinOct 14, 2008
  20. Daniel BarkalowOct 14, 2008
  21. Daniel BarkalowOct 14, 2008
  22. Junio C HamanoOct 14, 2008
  23. pull: allow "git pull origin $something:$current_branch" into an unborn branchJunio C Hamano, Oct 14, 2008
  24. Daniel BarkalowOct 13, 2008

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.