1234567891011121314151617181920212223242526272829303132333435 |
- const { exec, execSync } = require('child_process');
- const readline = require('readline').createInterface({
- //引入模块以便在命令行获取输入内容
- input: process.stdin,
- output: process.stdout,
- });
- /**
- * 上传git
- */
- function execFun() {
- execSync('git pull');
- exec('git status', (err, stream) => {
- if (err) return console.err(err);
- // 获取当前已修改文件列表
- const list = stream.split('\n') || [];
- let haveAdd = false;
- for (let i = 0; i < list.length; i++) {
- const v = list[i];
- haveAdd = /Changes not staged for commit:/.test(v);
- if (haveAdd) break;
- }
- readline.question('请输入提交内容:', Input => {
- haveAdd && execSync('git add .');
- exec(`git commit -m ${Input || '提交'}`, err => {
- if (err)
- return console.log(`git commit -m ${Input || '提交'} 报错:`, err);
- exec(`git push`, err => {
- if (err) return console.log(err);
- readline.close(); //关闭对话
- });
- });
- });
- });
- }
- execFun();
|