[PATCH v8 0/4] submodule: improve support for relative superproject origin URLs
- From
Jon Seymour <jon.seymour@gmail.com>
- Date
- Jun 3, 2012, 09:46 UTC
- Message-ID
- <1338716810-9881-1-git-send-email-jon.seymour@gmail.com>
This series improves handling by 'git submodule' of relative superproject origin URLs.
Currently, 'git submodule':
* incorrectly configures origin URL for submodules with a path that is relative to the work tree of the superproject when the configured path needs to be relative to the work tree of the submodule
* unnecessarily fails with an error if the superproject origin URL is of the form: foo
This series corrects these problems for paths like the following: foo foo/bar ./foo ./foo/bar ../foo ../foo/bar
It does not change current behaviour for URLs that begin with a leading / or contain a : as such URLs are deemed to be absolute URLs for which no correction is required.
In addition, this series ensures that relative URLs configured by git submodule do not include a superfluous leading or embedded './'.
This series differs from v7 by removing the patches dealing incorrect handling of greedy submodule URLs (those with too many leading ../'s) and those that deal with improperly normalized superproject origin URLs. These patches may resubmitted at a later date.
Jon Seymour (4):
submodule: additional regression tests for relative URLs
submodule: document failure to handle relative superproject origin
URLs
submodule: fix sync handling of some relative superproject origin
URLs
submodule: fix handling of superproject origin URLs like foo, ./foo
and ./foo/bargit-submodule.sh | 65 +++++++++++++++++--- t/t7400-submodule-basic.sh | 144 ++++++++++++++++++++++++++++++++++++++++++++- t/t7403-submodule-sync.sh | 90 +++++++++++++++++++++++++++- 3 files changed, 287 insertions(+), 12 deletions(-)
-- 1.7.10.2.652.gdffd412