How do I recursively add files by a pattern (or glob) located in different directories?
For example, I\'d like to add A/B/C/foo.java and D/E/F/bar
Sergey's answer (don't credit me) is working:
You can use git add [path]/\*.java
with a recent git:
$git version
git version 1.7.3.4
Files for the test:
$find -name .git -prune -o -type f -print | sort
./dirA/dirA-1/dirA-1-1/file1.txt
./dirA/dirA-1/dirA-1-2/file2.html
./dirA/dirA-1/dirA-1-2/file3.txt
./dirA/dirA-1/file4.txt
./dirB/dirB-1/dirB-1-1/file5.html
./dirB/dirB-1/dirB-1-1/file6.txt
./file7.txt
Git status:
$git status -s
?? dirA/
?? dirB/
?? file7.txt
Adding *.txt:
$git add \*.txt
Updated status:
$git status -s
A dirA/dirA-1/dirA-1-1/file1.txt
A dirA/dirA-1/dirA-1-2/file3.txt
A dirA/dirA-1/file4.txt
A dirB/dirB-1/dirB-1-1/file6.txt
A file7.txt
?? dirA/dirA-1/dirA-1-2/file2.html
?? dirB/dirB-1/dirB-1-1/file5.html