From: Alex Vandiver <alexmv@dropbox.com>
To: git@vger.kernel.org, "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
Subject: [BUG] File move with `add -N` shows as rename to same name
Date: Fri, 22 Dec 2017 18:42:21 -0800 (PST) [thread overview]
Message-ID: <alpine.DEB.2.10.1712221829430.29746@alexmv-linux> (raw)
I just stumbled across the following oddity:
mv tracked-file new-path
git add -N new-path
git status
..shows:
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
renamed: tracked-file -> tracked-file
no changes added to commit (use "git add" and/or "git commit -a")
Bisect points at 425a28e0a ("diff-lib: allow ita entries treated as
"not yet exist in index"", 2016-10-24), but I don't have enough
context to suggest the right fix.
Failing test is included below.
- Alex
--------------------8<--------------------
diff --git a/t/t2203-add-intent.sh b/t/t2203-add-intent.sh
index 1bdf38e80..97b6c0f05 100755
--- a/t/t2203-add-intent.sh
+++ b/t/t2203-add-intent.sh
@@ -150,5 +150,19 @@ test_expect_success 'commit: ita entries ignored in empty commit check' '
)
'
+test_expect_success 'rename detection finds the right names' '
+ git init rename-detection &&
+ (
+ cd rename-detection &&
+ echo contents > original-file
+ git add original-file
+ git commit -m first-commit
+ mv original-file new-file
+ git add -N new-file
+ git status --porcelain > actual
+ grep new-file actual
+ )
+'
+
test_done
--------------------8<--------------------
next reply other threads:[~2017-12-23 2:51 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-23 2:42 Alex Vandiver [this message]
2017-12-25 9:00 ` [BUG] File move with `add -N` shows as rename to same name Duy Nguyen
2017-12-25 10:37 ` [PATCH] status: handle worktree renames Nguyễn Thái Ngọc Duy
2017-12-25 18:26 ` Igor Djordjevic
2017-12-25 19:45 ` Igor Djordjevic
2017-12-25 21:49 ` Igor Djordjevic
2017-12-26 2:11 ` Duy Nguyen
2017-12-26 2:53 ` Duy Nguyen
2017-12-27 18:17 ` Junio C Hamano
2017-12-27 18:12 ` Junio C Hamano
2018-01-02 21:14 ` Jeff Hostetler
2018-01-10 9:26 ` Duy Nguyen
2017-12-26 9:10 ` [PATCH v2 0/7] Renames in git-status "changed not staged" section Nguyễn Thái Ngọc Duy
2017-12-26 9:10 ` [PATCH v2 1/7] t2203: test status output with porcelain v2 format Nguyễn Thái Ngọc Duy
2017-12-26 9:10 ` [PATCH v2 2/7] Use DIFF_DETECT_RENAME for detect_rename assignments Nguyễn Thái Ngọc Duy
2017-12-26 9:10 ` [PATCH v2 3/7] wt-status.c: coding style fix Nguyễn Thái Ngọc Duy
2017-12-26 9:10 ` [PATCH v2 4/7] wt-status.c: rename wt_status_change_data::score Nguyễn Thái Ngọc Duy
2017-12-26 9:10 ` [PATCH v2 5/7] wt-status.c: catch unhandled diff status codes Nguyễn Thái Ngọc Duy
2017-12-26 9:10 ` [PATCH v2 6/7] wt-status.c: handle worktree renames Nguyễn Thái Ngọc Duy
2017-12-26 18:14 ` Igor Djordjevic
2017-12-27 1:06 ` Duy Nguyen
2017-12-28 0:50 ` Igor Djordjevic
2017-12-28 2:14 ` Igor Djordjevic
2017-12-26 9:10 ` [PATCH v2 7/7] wt-status.c: avoid double renames in short/porcelain format Nguyễn Thái Ngọc Duy
2017-12-26 22:14 ` Igor Djordjevic
2017-12-27 0:49 ` Duy Nguyen
2017-12-27 23:53 ` Igor Djordjevic
2017-12-27 10:18 ` [PATCH v3 0/6] Renames in git-status "changed not staged" section Nguyễn Thái Ngọc Duy
2017-12-27 10:18 ` [PATCH v3 1/6] t2203: test status output with porcelain v2 format Nguyễn Thái Ngọc Duy
2017-12-27 10:18 ` [PATCH v3 2/6] Use DIFF_DETECT_RENAME for detect_rename assignments Nguyễn Thái Ngọc Duy
2017-12-27 10:18 ` [PATCH v3 3/6] wt-status.c: coding style fix Nguyễn Thái Ngọc Duy
2017-12-27 10:18 ` [PATCH v3 4/6] wt-status.c: catch unhandled diff status codes Nguyễn Thái Ngọc Duy
2017-12-27 10:18 ` [PATCH v3 5/6] wt-status.c: rename rename-related fields in wt_status_change_data Nguyễn Thái Ngọc Duy
2017-12-27 10:18 ` [PATCH v3 6/6] wt-status.c: handle worktree renames Nguyễn Thái Ngọc Duy
2017-12-28 0:59 ` [PATCH v3 0/6] Renames in git-status "changed not staged" section Igor Djordjevic
2018-01-02 21:22 ` Jeff Hostetler
2017-12-26 18:04 ` [PATCH] status: handle worktree renames Torsten Bögershausen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.DEB.2.10.1712221829430.29746@alexmv-linux \
--to=alexmv@dropbox.com \
--cc=git@vger.kernel.org \
--cc=pclouds@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).