git clone - как подавить предупреждение «Вы, кажется, клонировали пустой репозиторий»? - PullRequest
3 голосов
/ 20 января 2012

У меня есть автоматический скрипт, который анализирует сервер и клонирует все репозитории в одной из его папок. Псевдокод того, что он делает:

for each repo_name
  if a folder named like repo_name exists in .
    cd repo_name
    git fetch origin
  else
    git clone repo_url
  end
end

В некоторых случаях эти репозитории являются пустыми репозиториями. Затем команда git clone завершается неудачей - или сценарий, который я использую, считает, что он не работает. Он печатает сообщение на stderror (я думаю), говорящее

Вы, кажется, клонировали пустой репозиторий

Хорошо, спасибо, мерзавец, но это не было ошибкой.

Я попытался добавить в команду параметр --quiet, но это сообщение продолжает появляться.

Есть ли способ подавить его, не подавляя остальные возможные ошибки?

1 Ответ

2 голосов
/ 20 января 2012

Не очень элегантно, но как насчет перенаправления stderr на stdout и фильтрации этой ошибки с помощью grep?

git clone repo_url 2>&1 | grep -v 'warning: You appear to have cloned an empty repository.'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...