Thread (75 messages) 75 messages, 5 authors, 2018-04-10

Re: [PATCH v6 07/14] commit-graph: implement 'git-commit-graph write'

From: Derrick Stolee <hidden>
Date: 2018-03-19 19:09:29

On 3/19/2018 10:36 AM, Ævar Arnfjörð Bjarmason wrote:
On Mon, Mar 19 2018, Derrick Stolee jotted:
quoted
On 3/18/2018 9:25 AM, Ævar Arnfjörð Bjarmason wrote:
quoted
On Wed, Mar 14 2018, Derrick Stolee jotted:
quoted
+'git commit-graph write' <options> [--object-dir <dir>]
+
+
+DESCRIPTION
+-----------
+
+Manage the serialized commit graph file.
+
+
+OPTIONS
+-------
+--object-dir::
+	Use given directory for the location of packfiles and commit graph
+	file. The commit graph file is expected to be at <dir>/info/commit-graph
+	and the packfiles are expected to be in <dir>/pack.
Maybe this was covered in a previous round, this series is a little hard
to follow since each version isn't In-Reply-To the version before it,
but why is this option needed, i.e. why would you do:

      git commit-graph write --object-dir=/some/path/.git/objects

As opposed to just pigging-backing on what we already have with both of:

      git --git-dir=/some/path/.git commit-graph write
      git -C /some/path commit-graph write

Is there some use-case where you have *just* the objects dir and not the
rest of the .git folder?
Yes, such as an alternate. If I remember correctly, alternates only
need the objects directory.

In the GVFS case, we place prefetch packfiles in an alternate so there
is only one copy of the "remote objects" per drive. The commit graph
will be stored in that alternate.
Makes sense, but we should really document this as being such an unusual
option, i.e. instead say something like.

     Use given directory for the location of packfiles and commit graph
     file. Usually you'd use the `--git-dir` or `-C` arguments to `git`
     itself. This option is here to support obscure use-cases where we
     have a stand-alone object directory. The commit graph file is
     expected to be at <dir>/info/commit-graph and the packfiles are
     expected to be in <dir>/pack.
A slight change to your recommendation:


OPTIONS
-------
--object-dir::
         Use given directory for the location of packfiles and commit graph
         file. This parameter exists to specify the location of an alternate
         that only has the objects directory, not a full .git directory. The
         commit graph file is expected to be at <dir>/info/commit-graph and
         the packfiles are expected to be in <dir>/pack.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help