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

Re: [PATCH v2 4/4] dir: do not traverse repositories with no commits

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 3, 2019, 08:05 UTC
Message-ID
<xmqqef6jsedj.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<20190402183505.31512-5-kyle@kyleam.com>
Kyle Meyer <kyle@kyleam.com> writes:
> The above case is a corner case in an already unusual situation of the
> working tree containing a repository that is not a tracked submodule,
> but we might as well treat anything that looks like a repository
> consistently.
Makes sense.
Show 9 quoted lines
> As the required update to t3700-add shows, being looser with the check
> means that we're stricter when adding empty repositories to the index:
>
>   % git add repo
>   warning: adding embedded git repository: repo
>   hint: You've added another git repository inside your current repository.
>   hint: [...]
>   error: unable to index file 'repo/'
>   fatal: adding files failed

Hmph, why should we have the initial "warning" with hint? Shouldn't the above result in an outright error? Something like:

    $ git add repo ;# or git add repo/
    error: repo does not have a commit checked out
    fatal: adding files failed

because the entire purpose of "git add repo" (or "git add repo/") when "repo" is a repository is to register the commit that is checked out in that sub-repository to the index of the top-level repository, as part of updating (or starting) a submodule.

I very much like the direction these four patches want to take us. I just have small troubles here and there in their execution, though ;-)

Thanks.
Previous: Kyle MeyerNext: Kyle Meyer
Message 15 of 16 in “dir: Treat a repository without commits as a repository”
  1. 0/4 dir: Treat a repository without commits as a repositoryKyle Meyer, Mar 14, 2019
  2. 2/4 t3000: move non-submodule repo test to separate fileKyle Meyer, Mar 14, 2019
  3. 4/4 dir: do not traverse repositories with no commitsKyle Meyer, Mar 14, 2019
  4. 3/4 t3009: test that ls-files -o traverses bogus repoKyle Meyer, Mar 14, 2019
  5. 1/4 submodule: refuse to add repository with no commitsKyle Meyer, Mar 14, 2019
  6. Kyle MeyerMar 16, 2019
  7. 0/4 dir: Treat a repository without commits as a repositoryKyle Meyer, Apr 2, 2019
  8. 1/4 submodule: refuse to add repository with no commitsKyle Meyer, Apr 2, 2019
  9. Junio C HamanoApr 4, 2019
  10. 2/4 t3000: move non-submodule repo test to separate fileKyle Meyer, Apr 2, 2019
  11. Junio C HamanoApr 3, 2019
  12. Kyle MeyerApr 3, 2019
  13. 3/4 t3009: test that ls-files -o traverses bogus repoKyle Meyer, Apr 2, 2019
  14. 4/4 dir: do not traverse repositories with no commitsKyle Meyer, Apr 2, 2019
  15. Junio C HamanoApr 3, 2019
  16. Kyle MeyerApr 3, 2019

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.