Командная строка SVN: heredoc как сообщение
Есть ли способ использовать heredoc в качестве сообщения с помощью команды svn?
Я попробовал это:
$ echo <<TEXT | svn commit -m -
> line one input
> line two input
>TEXT
В моем репозитории он просто записывает черту как сообщение.
Я попытался искать и не нашел способа сделать многострочный ввод, кроме записи в \n
символов, но было бы замечательно, если бы я мог просто обычный многострочный текст, который я уже напечатал в качестве ввода.
Возможно ли использовать другой метод или это просто желаемое за действительное?
Спасибо!
2 ответа
Вы можете установить переменную окружения, которая позволит svn открыть желаемый текстовый редактор для ввода вашего сообщения о коммите.
SVN_EDITOR
Смотрите здесь для получения дополнительной информации
Если вы действительно хотите использовать здесь документ, вам нужно использовать -F
вариант. Но ваша другая проблема заключается в том, что вы используете echo
который не принимает никакого ввода на stdin. Ты хочешь cat
,
Так что будет работать следующее:
cat <<TEXT | svn commit -F -
Если вы делаете это в интерактивном режиме, я думаю, вы предпочтете ответ Jon Taylor.