Как я могу перечислить все файлы с помощью NodeGit? (Эквивалент git ls-files)

В настоящее время я использую следующие git команда для вывода списка всех неотслеживаемых и измененных файлов:

git ls-files -mo --exclude-standard

Есть ли для него эквивалент в NodeGit Мир?

1 ответ

Это один из способов, которыми я смог удовлетворить вышеуказанное требование:

const Git = require("nodegit");
const _ = require("lodash");


function getDirtyFiles(path) {

    Git.Repository.open(path).then(function (repository) {
        repository.getStatus().then(function(statusFiles) {
            const dirtyFiles = _.chain(statusFiles)
            .filter((statusFile) => (statusFile.isModified() || statusFile.isNew()))
            .flatMap((statusDirtyFile) => statusDirtyFile.path())
            .value();
            
            console.log(dirtyFiles);
        });
    });
};

getDirtyFiles(process.cwd());

Следующая строка помогает сопоставить -mo параметры: statusFile.isModified() || statusFile.isNew()

Другие вопросы по тегам