Browse Source

Merge branch 'nd/add-empty-fix'

"git add -A" (no other arguments) in a totally empty working tree
used to emit an error.

* nd/add-empty-fix:
  add: don't complain when adding empty project root
maint
Junio C Hamano 11 years ago
parent
commit
4ba46c2847
  1. 2
      builtin/add.c
  2. 19
      t/t3700-add.sh

2
builtin/add.c

@ -547,7 +547,7 @@ int cmd_add(int argc, const char **argv, const char *prefix) @@ -547,7 +547,7 @@ int cmd_add(int argc, const char **argv, const char *prefix)
const char *path = pathspec.items[i].match;
if (pathspec.items[i].magic & PATHSPEC_EXCLUDE)
continue;
if (!seen[i] &&
if (!seen[i] && path[0] &&
((pathspec.items[i].magic &
(PATHSPEC_GLOB | PATHSPEC_ICASE)) ||
!file_exists(path))) {

19
t/t3700-add.sh

@ -272,6 +272,25 @@ test_expect_success '"add non-existent" should fail' ' @@ -272,6 +272,25 @@ test_expect_success '"add non-existent" should fail' '
! (git ls-files | grep "non-existent")
'

test_expect_success 'git add -A on empty repo does not error out' '
rm -fr empty &&
git init empty &&
(
cd empty &&
git add -A . &&
git add -A
)
'

test_expect_success '"git add ." in empty repo' '
rm -fr empty &&
git init empty &&
(
cd empty &&
git add .
)
'

test_expect_success 'git add --dry-run of existing changed file' "
echo new >>track-this &&
git add --dry-run track-this >actual 2>&1 &&

Loading…
Cancel
Save