Merge branch 'jl/submodule-mv'
commitb02f5aeda6f66ac3be9b2e35f9b237d4f1f80d73
authorJunio C Hamano <gitster@pobox.com>
Mon, 9 Sep 2013 21:36:15 +0000 (9 14:36 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 9 Sep 2013 21:36:15 +0000 (9 14:36 -0700)
tree8b85c36e79c9f3dffbc9ea9df9c812c5f5070514
parentde9a25354aa22aa6796787f3ef3af276fba82339
parent95c16418f0375e2fc325f32c3d7578fba9cfd7ef
Merge branch 'jl/submodule-mv'

"git mv A B" when moving a submodule A does "the right thing",
inclusing relocating its working tree and adjusting the paths in
the .gitmodules file.

* jl/submodule-mv: (53 commits)
  rm: delete .gitmodules entry of submodules removed from the work tree
  mv: update the path entry in .gitmodules for moved submodules
  submodule.c: add .gitmodules staging helper functions
  mv: move submodules using a gitfile
  mv: move submodules together with their work trees
  rm: do not set a variable twice without intermediate reading.
  t6131 - skip tests if on case-insensitive file system
  parse_pathspec: accept :(icase)path syntax
  pathspec: support :(glob) syntax
  pathspec: make --literal-pathspecs disable pathspec magic
  pathspec: support :(literal) syntax for noglob pathspec
  kill limit_pathspec_to_literal() as it's only used by parse_pathspec()
  parse_pathspec: preserve prefix length via PATHSPEC_PREFIX_ORIGIN
  parse_pathspec: make sure the prefix part is wildcard-free
  rename field "raw" to "_raw" in struct pathspec
  tree-diff: remove the use of pathspec's raw[] in follow-rename codepath
  remove match_pathspec() in favor of match_pathspec_depth()
  remove init_pathspec() in favor of parse_pathspec()
  remove diff_tree_{setup,release}_paths
  convert common_prefix() to use struct pathspec
  ...
38 files changed:
Documentation/git.txt
builtin/add.c
builtin/blame.c
builtin/check-ignore.c
builtin/checkout.c
builtin/clean.c
builtin/commit.c
builtin/grep.c
builtin/log.c
builtin/ls-files.c
builtin/ls-tree.c
builtin/mv.c
builtin/reset.c
builtin/rm.c
builtin/update-index.c
cache.h
combine-diff.c
commit.h
diff-lib.c
diff.h
dir.c
git.c
line-log.c
merge-recursive.c
path.c
pathspec.c
read-cache.c
rerere.c
resolve-undo.c
revision.c
setup.c
submodule.c
t/t0008-ignores.sh
t/t7400-submodule-basic.sh
tree-walk.c
tree.c
wt-status.c
wt-status.h