Ошибка фиксации при фиксации новой версии в хранилище SVN - PullRequest
21 голосов
/ 11 октября 2010

Я пытаюсь зафиксировать новую версию в моем репозитории SVN, но у меня возникла эта ошибка:

svn: Сбой при фиксации (подробности следуют):
svn: Не удалось использовать внешнийредактор для извлечения сообщения журнала;рассмотрите возможность установки переменной среды $ SVN_EDITOR или использования опций --message (-m) или --file (-F)
svn: ни одна из переменных окружения SVN_EDITOR, VISUAL или EDITOR не установлена, а редактор - cmd отсутствует'во время выполнения был найден параметр конфигурации new-computers-computer: trunk newcomputer $

Что не так?

Ответы [ 5 ]

31 голосов
/ 11 октября 2010

Джастин,

Каждый раз, когда вы делаете коммит с Subversion, вам нужно написать сводку того, что происходит (то есть сообщение о коммите).Ошибка в том, что Subversion пытается запустить текстовый редактор, чтобы вы могли написать сообщение коммита, но редактор никогда не запускается.Установка SVN_EDITOR в вашем .bash_profile поможет вам.Вот некоторые подробные пошаговые инструкции о том, как установить vim в качестве редактора по умолчанию, используемого svn: Исходная ссылка не работает, заменена на archive.is mirror

В качестве альтернативы, как предлагается вВ сообщении об ошибке вы можете загрузить сообщение о фиксации из существующего файла с помощью -f или передать сообщение с помощью -m.

Примеры:

svn commit -m "Fixed a regression that prevented pigs from flying (resolves issue #123, but causes strange behavior elsewhere)"
svn commit -f /path/to/a/file/with/a/long/commit/message.txt
16 голосов
/ 01 марта 2013

Если вы хотите установить редактор по умолчанию, который будет использоваться при каждом запуске

svn commit

Попробуйте выполнить следующую команду в оболочке:

export SVN_EDITOR=nano

Это установит nano в качестве текстового редактора для сообщений коммита. С этого момента, когда вы звоните svn commit без флага -m, открывается nano. После закрытия nano SVN продолжит коммит.

2 голосов
/ 09 декабря 2016

У меня тоже была такая же проблема, однако это было на Windows. Я смог решить проблему, используя -m (--message) и предоставив сообщение о коммите.

Я также пытался использовать cygwin с сообщением фиксации, и это сработало.

0 голосов
/ 02 мая 2019

У меня была такая же проблема при выполнении:

svn copy $svn_source_path $svn_destination_path

Мне не хватало добавления -m "log msg", т.е.

svn copy $svn_source_path $svn_destination_path -m -m "Test tag creation"
0 голосов
/ 24 октября 2016

У меня была похожая проблема при попытке импортировать не версионный код в новый репозиторий, основываясь на ответах на этот вопрос, я смог решить свою проблему (спасибо, ребята).

Я делюсь командой, которую использовал для импорта локального проекта в SVN при использовании apache / http:

Где TestCodeDir - проект, который еще не был версии.

svn import /var/svn/TestCodeDir http://localhost/svn/TestCodeDir -m "Initial Commit"

Примечание. Вы должны правильно настроить свой сервер Apache и запустить его.

Надеюсь, это кому-нибудь поможет.

...