t / t2202-add-addremove.shon commit Merge branch 'rj/doc-rev-parse' (e30db6d)
   1#!/bin/sh
   2
   3test_description='git add --all'
   4
   5. ./test-lib.sh
   6
   7test_expect_success setup '
   8        (
   9                echo .gitignore
  10                echo will-remove
  11        ) >expect &&
  12        (
  13                echo actual
  14                echo expect
  15                echo ignored
  16        ) >.gitignore &&
  17        >will-remove &&
  18        git add --all &&
  19        test_tick &&
  20        git commit -m initial &&
  21        git ls-files >actual &&
  22        test_cmp expect actual
  23'
  24
  25test_expect_success 'git add --all' '
  26        (
  27                echo .gitignore
  28                echo not-ignored
  29                echo "M .gitignore"
  30                echo "A not-ignored"
  31                echo "D will-remove"
  32        ) >expect &&
  33        >ignored &&
  34        >not-ignored &&
  35        echo modification >>.gitignore &&
  36        rm -f will-remove &&
  37        git add --all &&
  38        git update-index --refresh &&
  39        git ls-files >actual &&
  40        git diff-index --name-status --cached HEAD >>actual &&
  41        test_cmp expect actual
  42'
  43
  44test_expect_success 'Just "git add" is a no-op' '
  45        git reset --hard &&
  46        echo >will-remove &&
  47        >will-not-be-added &&
  48        git add &&
  49        git diff-index --name-status --cached HEAD >actual &&
  50        >expect &&
  51        test_cmp expect actual
  52'
  53
  54test_done