JGit:使用Add()添加文件夹中的文件

时间:2017-02-06 19:55:56

标签: java jgit

我正在编写一个场景,我必须使用add()将文件夹中存在的特定文件添加到本地git存储库。所以我逐个遍历文件夹中的所有文件,并使用add()将它们添加到本地存储库。但不知何故,在使用git status检查控制台时,不会添加这些文件。

代码段是:

AddCommand cmd=git.add();
    File[] fList = pathFolder.listFiles();

    for (File file : fList){

        if (file.isFile()){
            try {
                cmd.addFilepattern(file.getPath());

            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    try {
        cmd.call();
    } catch (GitAPIException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

期待一些解决方案

1 个答案:

答案 0 :(得分:1)

我认为你不应该通过file.getPath()添加完整路径,而应该只添加相对名称,例如pathFolder.getName() + "/" + file.getName()或类似的东西。

另一种选择是简单地添加目录,这应该根据JavaDoc

添加该目录中的所有文件

有关简单的工作示例,请查看this snippet