Recursively add files by pattern

前端 未结 11 1369
予麋鹿
予麋鹿 2020-11-28 18:18

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

11条回答
  •  情歌与酒
    2020-11-28 18:50

    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
    

提交回复
热议问题