@ 201216.1
current
Setup:

  $ . $TESTDIR/setup.sh
  $ mkdir hidden_bug
  $ cd hidden_bug
  $ printf "test\n" > a.txt
  $ git init --quiet
  $ if [ ! -d .git/info ] ; then mkdir .git/info ; fi
  $ printf "a.txt\n" > .git/info/exclude

  $ ag --ignore-dir .git test
  [1]

  $ ag --hidden --ignore-dir .git test
  [1]

  $ ag -U --ignore-dir .git test
  a.txt:1:test

  $ ag --hidden -U --ignore-dir .git test
  a.txt:1:test

  $ mkdir -p ./.hidden
  $ printf 'whatever\n' > ./.hidden/a.txt

  $ ag whatever
  [1]

  $ ag --hidden whatever
  [1]

  $ printf "\n" > .git/info/exclude

  $ ag whatever
  [1]

  $ ag --hidden whatever
  .hidden/a.txt:1:whatever