Узел js exec, как ввести фразу-пароль для открытого ключа в терминале, когда git clone в одной строке - PullRequest
0 голосов
/ 08 мая 2018

Я пишу скрипт на node.js для клонирования репозитория git.

 const { exec } = require('child_process');
 exec('git clone <path>.git', (err, stdout, stderr) => {
        if(err){
          return;
        }

        console.log(`stdout: ${stdout}`);
        console.log(`stderr: ${stderr}`);
      });

Мне нужно передать ключ-фразу для клонирования с использованием открытого ключа.Как передать его в одну строку в качестве аргумента для exec('git clone <path>.git'

Фраза-пароль должна передаваться как параметр, и ее не следует сохранять

Вместо перехода к 2 шагам можносделать за один шаг?

Ответы [ 2 ]

0 голосов
/ 11 мая 2018

Для клонирования репозитория я использовал следующую библиотеку

    var cmd = require('node-cmd');
    cmd.get(
      `
        git clone <repo-name>
      `,
      function(err, data, stderr){
          console.log(data);
        }
      );

И это сработало как шарм

0 голосов
/ 08 мая 2018

Похоже, git clone не будет принимать парольную фразу в командной строке. Но ваш скрипт узла может читать аргументы командной строки. Тогда вы сможете передавать учетные данные в git, используя node-Ожидайте .

...