Merge branch 'sy/mv-out-of-cone'
commit0455aad1e39f21acbaa8a84129fec8eb77682e0d
authorJunio C Hamano <gitster@pobox.com>
Thu, 14 Jul 2022 22:03:59 +0000 (14 15:03 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 14 Jul 2022 22:04:00 +0000 (14 15:04 -0700)
tree1df8116ca1240d3b5021f4ab044f387bb1c25bbd
parent73b9ef6ab18fa7c9631f24eba0c67357067a1267
parentb91a2b6594a1da7d4d2f936f7db25bfa5a3d775e
Merge branch 'sy/mv-out-of-cone'

"git mv A B" in a sparsely populated working tree can be asked to
move a path between directories that are "in cone" (i.e. expected
to be materialized in the working tree) and "out of cone"
(i.e. expected to be hidden).  The handling of such cases has been
improved.

* sy/mv-out-of-cone:
  mv: add check_dir_in_index() and solve general dir check issue
  mv: use flags mode for update_mode
  mv: check if <destination> exists in index to handle overwriting
  mv: check if out-of-cone file exists in index with SKIP_WORKTREE bit
  mv: decouple if/else-if checks using goto
  mv: update sparsity after moving from out-of-cone to in-cone
  t1092: mv directory from out-of-cone to in-cone
  t7002: add tests for moving out-of-cone file/directory