@nuofe/ndk-commit-tool
Version:
Commit tool for Nuo FE.
77 lines (55 loc) • 1.73 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _ndkCli = _interopRequireDefault(require("@nuofe/ndk-cli"));
var _ndkLogger = _interopRequireDefault(require("@nuofe/ndk-logger"));
var _fsExtra = _interopRequireDefault(require("fs-extra"));
var _path = _interopRequireDefault(require("path"));
var _link = _interopRequireDefault(require("./link"));
var _removeMissingFiles = _interopRequireDefault(require("./remove-missing-files"));
const debug = _ndkLogger.default.debug('ndk-commit-tool:svn:status');
const getStatus = async (options, removeMissing = true) => {
const {
cwd,
root,
spinner
} = options;
const {
status,
stderr,
stdout
} = await _ndkCli.default.spawn('svn', ['status'], {
cwd
});
debug('status: %s', status);
debug('stderr: %s', stderr);
debug('stdout: %s', stdout);
if (status !== 0 || stderr !== '') {
if (!root) {
return false;
}
const svnPath = _path.default.resolve(cwd, '.svn');
if (_fsExtra.default.existsSync(svnPath)) {
spinner.stop();
console.error(stderr);
_ndkLogger.default.logEmpty();
_ndkLogger.default.logError('[i] 获取 Svn 信息失败!');
_ndkLogger.default.logEmpty();
process.exit(1);
}
if (await (0, _link.default)(options)) {
return getStatus(options);
}
return false;
}
if (removeMissing && stdout !== '') {
await (0, _removeMissingFiles.default)(options, stdout);
return getStatus(options, false);
}
return stdout;
};
var _default = getStatus;
exports.default = _default;