Разобрать файл .gitmodules, чтобы получить ответвление, путь, URL, используя JavaScript Regex - PullRequest
0 голосов
/ 12 марта 2019

Я хотел бы проанализировать файл .gitmodules, чтобы получить подробную информацию о ветви, пути, URL-адресе, используя javascript Regex.

.gitmodules

 [submodule "PATH"]
     path = <PATH>
     url = <URL> 
 [submodule "PATH"]
     path = <PATH>
     url = <URL>
     branch = <BRANCH>

1 Ответ

0 голосов
/ 13 марта 2019

Вот код, я разработал

    parseGitModules: function (data, callback) {
        var gitModules = data.split("["),
            subModulesCollections = [];

        _.each(gitModules, function (submodules) {
            if (/^submodule*/.test(submodules)) {
                var submodule = submodules.split("\n\t"),
                    moduleDetails = {};

                _.each(submodule, function (sub) {
                    var parseSubmoduleDetails = [],

                    sub = sub.replace(/\n/g,'').replace(/\s/g,'').replace(/\"/g,'=');
                    parseSubmoduleDetails = sub.split("=");

                    switch(parseSubmoduleDetails[0]) {
                        case "submodule":
                            moduleDetails.submodule = parseSubmoduleDetails[1];
                            break;
                        case "path":
                            moduleDetails.path = parseSubmoduleDetails[1];
                            break;
                        case "branch":
                            moduleDetails.branch = parseSubmoduleDetails[1];
                            break;
                        case "url":
                            moduleDetails.url = parseSubmoduleDetails[1];
                            break;
                    };
                });

                subModulesCollections.push(moduleDetails);
            }
        });

        callback(null, subModulesCollections);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...