24 lines
736 B
Dart
24 lines
736 B
Dart
import 'dart:async';
|
|
|
|
import 'package:oto_cli/oto/commands/command.dart';
|
|
import 'package:oto_cli/oto/data/command_data.dart';
|
|
import 'package:dart_framework/platform/process.dart';
|
|
|
|
class Git extends Command {
|
|
@override
|
|
Future execute(DataCommand command) async {
|
|
var data = DataGit.fromJson(command.param);
|
|
var workspace = getWorkspace(data.workspace);
|
|
|
|
var shell = StringBuffer('cd $workspace\n');
|
|
var commands = data.commands;
|
|
for (var item in commands) {
|
|
shell.writeln('git ${getPathNormal(item)}');
|
|
}
|
|
|
|
var process = await ProcessExecutor.start(shell, workspace: workspace);
|
|
|
|
return complete(await process.process.exitCode, command,
|
|
errorMessage: process.stderr.toString());
|
|
}
|
|
}
|