git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v3 0/2] Address recovery failures with directory/file conflicts

From
Elijah Newren <newren@gmail.com>
Date
Jul 31, 2018, 17:12 UTC
Message-ID
<20180731171205.4794-1-newren@gmail.com>
In-Reply-To
<20180713163331.22446-1-newren@gmail.com>
This patch series fixes several "recovery" commands that outright fail
or do not fully recover when directory-file conflicts are present.
This includes:
   * git read-tree --reset HEAD
   * git am --skip
   * git am --abort
   * git merge --abort (or git reset --merge)
   * git reset --hard
Changes since v2 (full range-diff below):
  - Backported to maint (there were some textual conflicts in t6042
    due to the merging of en/merge-recursive-tests to master), because
    of this comment from Junio's what's cooking email:
    "This may have to be rebased on an older maintenance track before
     moving forward."
Elijah Newren (2):
  t1015: demonstrate directory/file conflict recovery failures
  read-cache: fix directory/file conflict handling in
    read_index_unmerged()
 read-cache.c                         |  13 +--
 t/t1015-read-index-unmerged.sh       | 123 +++++++++++++++++++++++++++
 t/t6020-merge-df.sh                  |   3 -
 t/t6042-merge-rename-corner-cases.sh |   2 -
 4 files changed, 131 insertions(+), 10 deletions(-)
 create mode 100755 t/t1015-read-index-unmerged.sh
1:  4a1c9c3368 ! 1:  00f94a8b41 t1015: demonstrate directory/file conflict recovery failures
    @@ -14,7 +14,6 @@
     
         Signed-off-by: Elijah Newren <newren@gmail.com>
         Signed-off-by: Junio C Hamano <gitster@pobox.com>
    -    Message-Id: <20180713163331.22446-2-newren@gmail.com>
     
     diff --git a/t/t1015-read-index-unmerged.sh b/t/t1015-read-index-unmerged.sh
     new file mode 100755
2:  e105e8bfbd ! 2:  d3b8d7edb6 read-cache: fix directory/file conflict handling in read_index_unmerged()
    @@ -59,7 +59,6 @@
     
         Signed-off-by: Elijah Newren <newren@gmail.com>
         Signed-off-by: Junio C Hamano <gitster@pobox.com>
    -    Message-Id: <20180713163331.22446-3-newren@gmail.com>
     
     diff --git a/read-cache.c b/read-cache.c
     --- a/read-cache.c
    @@ -150,10 +149,18 @@
     --- a/t/t6042-merge-rename-corner-cases.sh
     +++ b/t/t6042-merge-rename-corner-cases.sh
     @@
    - 	(
    - 		cd rename-directory-1 &&
    + '
    +
    + test_expect_success 'rename/directory conflict + clean content merge' '
    +-	git reset --hard &&
    +	git reset --hard &&
    +	git clean -fdqx &&
      
    --		git reset --hard &&
    - 		git reset --hard &&
    - 		git clean -fdqx &&
    +@@
    + '
    +
    + test_expect_success 'rename/directory conflict + content merge conflict' '
    +-	git reset --hard &&
    +	git reset --hard &&
    +	git clean -fdqx &&
      
-- 
2.18.0.2.gf4c50c7885
Previous: Elijah NewrenNext: Elijah Newren
Message 12 of 14 in “Address recovery failures with directory/file conflicts”
  1. 0/2 Address recovery failures with directory/file conflictsElijah Newren, Jul 11, 2018
  2. 1/2 t1015: demonstrate directory/file conflict recovery failuresElijah Newren, Jul 11, 2018
  3. Eric SunshineJul 11, 2018
  4. Elijah NewrenJul 11, 2018
  5. 2/2 read-cache: fix directory/file conflict handling in read_index_unmerged()Elijah Newren, Jul 11, 2018
  6. Junio C HamanoJul 11, 2018
  7. Elijah NewrenJul 11, 2018
  8. 0/2 Address recovery failures with directory/file conflictsElijah Newren, Jul 13, 2018
  9. 2/2 read-cache: fix directory/file conflict handling in read_index_unmerged()Elijah Newren, Jul 13, 2018
  10. 1/2 t1015: demonstrate directory/file conflict recovery failuresElijah Newren, Jul 13, 2018
  11. Elijah NewrenJul 13, 2018
  12. 0/2 Address recovery failures with directory/file conflictsElijah Newren, Jul 31, 2018
  13. 2/2 read-cache: fix directory/file conflict handling in read_index_unmerged()Elijah Newren, Jul 31, 2018
  14. 1/2 t1015: demonstrate directory/file conflict recovery failuresElijah Newren, Jul 31, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.