Browse Source

'sa'

master
1549469775 5 years ago
parent
commit
79987ae1a6
  1. 76
      app.js
  2. 11
      git_util.js

76
app.js

@ -14,12 +14,25 @@ const haveGit = fs.existsSync('./.git');
* 2. 添加GIT源
* 3. 设置默认源以供一键上传
*/
// exec('git status', function (error, stdout, stderr) {
// let str = stdout.replace(/( |\\n)/g, '');
// console.log(str);
// })
// return
function isClean() {
return new Promise((resolve, reject) => {
exec('git status', function (error, stdout, stderr) {
if (error) {
console.log(error);
reject(error);
return;
}
let str = stdout.replace(/( |\\n)/g, '');
console.log(str);
let isClean = str.indexOf('clean') != -1;
console.log(str.indexOf('clean') != -1);
resolve(isClean);
})
})
}
function getBranch() {
return new Promise((resolve, reject) => {
@ -55,6 +68,41 @@ function getBranch() {
// 所有的源
let origin = stdout.split('\n').slice(0, stdout.split('\n').length - 1);
console.log(origin);
if (origin.length == 0) {
inquirer.prompt([{
type: 'input', // 问题类型,包括input,number,confirm,list,rawlist,password
name: 'name',
message: '源名字', // 问题
default: '', // 默认值
validate: (input) => {
if (input.length == 0) {
return '请输入源名字';
}
return true;
}
}, {
type: 'input', // 问题类型,包括input,number,confirm,list,rawlist,password
name: 'url',
message: '源url', // 问题
default: '', // 默认值
validate: (input) => {
if (input.length == 0) {
return '请输入源url';
}
return true;
}
}]).then(async answers => {
exec('git remote add ' + answers.name + ' ' + answers.url, function (error, stdout, stderr) {
if (error) {
console.log(error);
reject(error);
return;
}
console.log('添加成功');
})
})
return;
}
inquirer.prompt([{
type: 'confirm', // 问题类型,包括input,number,confirm,list,rawlist,password
name: 'all',
@ -66,7 +114,12 @@ function getBranch() {
let branch = await getBranch(); //当前分支
for (let i = 0; i < origin.length; i++) {
const o = origin[i];
let isclean = await isClean();
if (!isclean) {
await git_util.all('sa', o, branch);
} else {
await git_util.push(o, branch);
}
}
} else {
inquirer.prompt([{
@ -75,8 +128,19 @@ function getBranch() {
name: 'choices',
message: '请选择一个源提交', // 问题
default: true // 默认值
}]).then(answers => {
}]).then(async answers => {
console.log(answers.choices);
let ooo = answers.choices;
let branch = await getBranch(); //当前分支
for (let i = 0; i < ooo.length; i++) {
const o = ooo[i];
let isclean = await isClean();
if (!isclean) {
await git_util.all('sa', o, branch);
} else {
await git_util.push(o, branch);
}
}
})
}
})

11
git_util.js

@ -12,18 +12,10 @@ module.exports = {
console.log("git commit -m '" + msg + "'");
exec("git commit -m '" + msg + "'", function (error, stdout, stderr) {
if (error) {
// reject(error);
// console.log(error);
exec(banch ? "git push " + origin + " " + banch : "git push " + origin, function (error, stdout, stderr) {
if (error) {
reject(error);
console.log(error);
return;
}
resolve();
})
return;
}
console.log(banch ? "git push " + origin + " " + banch : "git push " + origin);
exec(banch ? "git push " + origin + " " + banch : "git push " + origin, function (error, stdout, stderr) {
if (error) {
@ -38,12 +30,14 @@ module.exports = {
})
},
commit(msg, origin, banch) {
console.log("git commit -m '" + msg + "'");
exec("git commit -m '" + msg + "'", function (error, stdout, stderr) {
if (error) {
reject(error);
console.log(error);
return;
}
console.log(banch ? "git push " + origin + " " + banch : "git push " + origin);
exec(banch ? "git push " + origin + " " + banch : "git push " + origin, function (error, stdout, stderr) {
if (error) {
reject(error);
@ -56,6 +50,7 @@ module.exports = {
},
push(origin, banch) {
return new Promise((resolve, reject) => {
console.log(banch ? "git push " + origin + " " + banch : "git push " + origin);
exec(banch ? "git push " + origin + " " + banch : "git push " + origin, function (error, stdout, stderr) {
if (error) {
reject(error);

Loading…
Cancel
Save