<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/submodule.c, branch v2.13.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.13.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.13.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2017-05-04T04:42:05Z</updated>
<entry>
<title>submodule: properly recurse for read-tree and checkout</title>
<updated>2017-05-04T04:42:05Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2017-05-02T19:32:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=218c883783ee7c23a0955507f5b7ac4027428d63'/>
<id>urn:sha1:218c883783ee7c23a0955507f5b7ac4027428d63</id>
<content type='text'>
We forgot to prepare the submodule env, which is only a problem for
nested submodules. See 2e5d6503bd (ls-files: fix recurse-submodules
with nested submodules, 2017-04-13) for further explanation.

To come up with a proper test for this, we'd need to look at nested
submodules just as in that given commit. It turns out we're lucky
and these tests already exist, but are marked as failing. We need
to pass `--recurse-submodules` to read-tree additionally to make
these tests pass. Passing that flag alone would not make the tests
pass, such that this covers testing for the bug fix of the submodule
env as well.

Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>submodule: avoid auto-discovery in new working tree manipulator code</title>
<updated>2017-05-04T04:42:04Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2017-05-02T19:32:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=da27bc81f00fb5315341b26db8879c266e8ba1a2'/>
<id>urn:sha1:da27bc81f00fb5315341b26db8879c266e8ba1a2</id>
<content type='text'>
All commands that are run in a submodule, are run in a correct setup,
there is no need to prepare the environment without setting the GIT_DIR
variable. By setting the GIT_DIR variable we fix issues as discussed in
10f5c52656 (submodule: avoid auto-discovery in
prepare_submodule_repo_env(), 2016-09-01)

Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>submodule_move_head: reuse child_process structure for futher commands</title>
<updated>2017-05-04T04:42:04Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2017-05-02T19:32:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a17062cf42556593fb73547e613b0be867026257'/>
<id>urn:sha1:a17062cf42556593fb73547e613b0be867026257</id>
<content type='text'>
We do not need to declare another struct child_process, but we can just
reuse the existing `cp` struct.

Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'sb/checkout-recurse-submodules'</title>
<updated>2017-04-24T05:07:54Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-04-24T05:07:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5000cd45d80c6789a36e33e70c462ccf1d128dcb'/>
<id>urn:sha1:5000cd45d80c6789a36e33e70c462ccf1d128dcb</id>
<content type='text'>
Code cleanup.

* sb/checkout-recurse-submodules:
  submodule: remove a superfluous second check for the "new" variable
</content>
</entry>
<entry>
<title>Merge branch 'nd/files-backend-git-dir'</title>
<updated>2017-04-20T04:37:19Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-04-20T04:37:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5ab8f2261fa2b595abe433dd50be0f2aaec14aa0'/>
<id>urn:sha1:5ab8f2261fa2b595abe433dd50be0f2aaec14aa0</id>
<content type='text'>
The "submodule" specific field in the ref_store structure is
replaced with a more generic "gitdir" that can later be used also
when dealing with ref_store that represents the set of refs visible
from the other worktrees.

* nd/files-backend-git-dir: (28 commits)
  refs.h: add a note about sorting order of for_each_ref_*
  t1406: new tests for submodule ref store
  t1405: some basic tests on main ref store
  t/helper: add test-ref-store to test ref-store functions
  refs: delete pack_refs() in favor of refs_pack_refs()
  files-backend: avoid ref api targeting main ref store
  refs: new transaction related ref-store api
  refs: add new ref-store api
  refs: rename get_ref_store() to get_submodule_ref_store() and make it public
  files-backend: replace submodule_allowed check in files_downcast()
  refs: move submodule code out of files-backend.c
  path.c: move some code out of strbuf_git_path_submodule()
  refs.c: make get_main_ref_store() public and use it
  refs.c: kill register_ref_store(), add register_submodule_ref_store()
  refs.c: flatten get_ref_store() a bit
  refs: rename lookup_ref_store() to lookup_submodule_ref_store()
  refs.c: introduce get_main_ref_store()
  files-backend: remove the use of git_path()
  files-backend: add and use files_ref_path()
  files-backend: add and use files_reflog_path()
  ...
</content>
</entry>
<entry>
<title>Merge branch 'sb/submodule-rm-absorb'</title>
<updated>2017-04-20T04:37:17Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-04-20T04:37:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a06380be54c877241a02cf057d7bf20c958224be'/>
<id>urn:sha1:a06380be54c877241a02cf057d7bf20c958224be</id>
<content type='text'>
Error message fix.

* sb/submodule-rm-absorb:
  submodule.c: add missing ' in error messages
</content>
</entry>
<entry>
<title>Merge branch 'bw/push-options-recursively-to-submodules'</title>
<updated>2017-04-20T04:37:14Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-04-20T04:37:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=872e2cf00a570e9d83e40343579a7bb092307d53'/>
<id>urn:sha1:872e2cf00a570e9d83e40343579a7bb092307d53</id>
<content type='text'>
"git push --recurse-submodules --push-option=&lt;string&gt;" learned to
propagate the push option recursively down to pushes in submodules.

* bw/push-options-recursively-to-submodules:
  push: propagate remote and refspec with --recurse-submodules
  submodule--helper: add push-check subcommand
  remote: expose parse_push_refspec function
  push: propagate push-options with --recurse-submodules
  push: unmark a local variable as static
</content>
</entry>
<entry>
<title>Merge branch 'bc/object-id'</title>
<updated>2017-04-20T04:37:13Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-04-20T04:37:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b1081e4004091947b6c6a806625addd1cbba61b7'/>
<id>urn:sha1:b1081e4004091947b6c6a806625addd1cbba61b7</id>
<content type='text'>
Conversion from unsigned char [40] to struct object_id continues.

* bc/object-id:
  Documentation: update and rename api-sha1-array.txt
  Rename sha1_array to oid_array
  Convert sha1_array_for_each_unique and for_each_abbrev to object_id
  Convert sha1_array_lookup to take struct object_id
  Convert remaining callers of sha1_array_lookup to object_id
  Make sha1_array_append take a struct object_id *
  sha1-array: convert internal storage for struct sha1_array to object_id
  builtin/pull: convert to struct object_id
  submodule: convert check_for_new_submodule_commits to object_id
  sha1_name: convert disambiguate_hint_fn to take object_id
  sha1_name: convert struct disambiguate_state to object_id
  test-sha1-array: convert most code to struct object_id
  parse-options-cb: convert sha1_array_append caller to struct object_id
  fsck: convert init_skiplist to struct object_id
  builtin/receive-pack: convert portions to struct object_id
  builtin/pull: convert portions to struct object_id
  builtin/diff: convert to struct object_id
  Convert GIT_SHA1_RAWSZ used for allocation to GIT_MAX_RAWSZ
  Convert GIT_SHA1_HEXSZ used for allocation to GIT_MAX_HEXSZ
  Define new hash-size constants for allocating memory
</content>
</entry>
<entry>
<title>Merge branch 'sb/submodule-short-status'</title>
<updated>2017-04-20T04:37:12Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-04-20T04:37:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c703555cc89cf6aedf549a1233b242d8cb8e0f20'/>
<id>urn:sha1:c703555cc89cf6aedf549a1233b242d8cb8e0f20</id>
<content type='text'>
The output from "git status --short" has been extended to show
various kinds of dirtyness in submodules differently; instead of to
"M" for modified, 'm' and '?' can be shown to signal changes only
to the working tree of the submodule but not the commit that is
checked out.

* sb/submodule-short-status:
  submodule.c: correctly handle nested submodules in is_submodule_modified
  short status: improve reporting for submodule changes
  submodule.c: stricter checking for submodules in is_submodule_modified
  submodule.c: port is_submodule_modified to use porcelain 2
  submodule.c: convert is_submodule_modified to use strbuf_getwholeline
  submodule.c: factor out early loop termination in is_submodule_modified
  submodule.c: use argv_array in is_submodule_modified
</content>
</entry>
<entry>
<title>submodule: remove a superfluous second check for the "new" variable</title>
<updated>2017-04-18T00:41:13Z</updated>
<author>
<name>Sebastian Schuberth</name>
<email>sschuberth@gmail.com</email>
</author>
<published>2017-04-17T07:59:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=731eb176a30da4a7f268482be0067f159791dd4f'/>
<id>urn:sha1:731eb176a30da4a7f268482be0067f159791dd4f</id>
<content type='text'>
Signed-off-by: Sebastian Schuberth &lt;sschuberth@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
