resolveGitInfo()

in src/langs/cpp/package_info.js [44:83]


  resolveGitInfo(config) {
    if (!config.packageInfo && !config.cpp) {
      return false;
    }
    let git_scope = '';
    let git_project = '';
    let git_link = '';
    let git_tag = 'master';
    const package_name = `${_toSnakeCase(config.scope)}_${_toSnakeCase(config.name)}`;
    let package_info;
    if (config.packageInfo) {
      package_info = config.packageInfo;
    } else if (config.cpp && config.cpp.packageInfo) {
      package_info = config.cpp.packageInfo;
    } else {
      debug.warning(config.name + ' haven\'t define Darafile.cpp.packageInfo, use default instead.');
      package_info = {
        'git': {
          'scope': 'darabonba',
          'project': 'project'
        }
      };
    }
    if (package_info.git && package_info.git.scope) {
      if (package_info.git.scope) {
        git_scope = package_info.git.scope;
      }
      if (package_info.git.project) {
        git_project = package_info.git.project;
      }
      if (config.releases && config.releases.cpp) {
        const [git_repo, tag] = config.releases.cpp.split(':');
        git_link = `https://github.com/${git_repo}.git`;
        git_tag = tag;
      } else {
        git_link = `https://github.com/${git_scope}/${git_project}.git`;
      }
    }
    return { package_name, git_scope, git_project, git_link, git_tag };
  }