[PATCH] Test case for a problem with git add -u from subdirectory

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Manual page for "git-add -u" says:
Update only files that git already knows about. This is similar to
what "git commit -a" does in preparation for making a commit, except
that the update is limited to paths specified on the command line. If
no paths are specified, all tracked files are updated.

The key sentence being: "If no paths are specified, all tracked files
are updated." If one modifies a file in subdir1, then goes to subdir2
and performs "git add -u" the modified file in subdir1 is not added to
the index. This test case demonstrates the problem.

Signed-off-by: Pekka Kaitaniemi <kaitanie@xxxxxxxxxxxxxx>
---

I found a possible problem in "git add -u" command without any
paths. Modified files located in a different subdirectory are not
added to the index even though the documentation says that in this
case all tracked files should be. Maybe this is caused by a bug in
"git add"? Or is the problem in the documentation?

In any case, this patch contains a test case that demonstrates the
problem.

 t/t2200-add-update.sh |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/t/t2200-add-update.sh b/t/t2200-add-update.sh
index 24f892f..5815ec5 100755
--- a/t/t2200-add-update.sh
+++ b/t/t2200-add-update.sh
@@ -80,6 +80,22 @@ test_expect_success 'change gets noticed' '
 
 '
 
+test_expect_success 'update from a different subdirectory' '
+	(
+		cd dir1 &&
+		echo addmore >sub2 &&
+                cd ../dir2 &&
+                git add -u
+	)
+
+'
+
+test_expect_success 'change gets noticed' '
+
+	test "$(git diff-files --name-status dir1)" = ""
+
+'
+
 test_expect_success 'replace a file with a symlink' '
 
 	rm foo &&
-- 
1.5.4.2

-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux