首页 > 解决方案 > 如何与飞镖上的流程进行交互?

问题描述

如何将用户名和密码放在 git 命令上?

我正在尝试这个,但是,只调用了 stderr 侦听器,上面描述的输出错误和退出代码 128

输出错误:

致命:无法读取“https://username@bitbucket.org”的密码:没有这样的设备或地址

void shell() async {
  var process = await Process.start('git', ["remote", "show", "origin",],
      workingDirectory: "directory/repot");
  process.stdout.transform(utf8.decoder).listen((event) {
    if(event.contains("Password")) {
      process.stdin.write("123456789");
    } else if(event.contains("Username")) {
      process.stdin.write("user.name");
    } else {
      print("output git command: " + event);
    }    
  });  
  process.stderr.transform(utf8.decoder).listen((event) {
    print("output erro: " + event);    
  });
  process.exitCode.then((event) {
    print("exitcode: " + event);  
  });
}

标签: dart

解决方案


推荐阅读