Используя Subversion, я пытаюсь зафиксировать:
svn ci dir/filename
И я получаю это:
svn: system('emacs svn-commit.tmp') returned 256
Что это значит? Как я могу это исправить?
Используя Subversion, я пытаюсь зафиксировать:
svn ci dir/filename
И я получаю это:
svn: system('emacs svn-commit.tmp') returned 256
Что это значит? Как я могу это исправить?
Когда вы пытаетесь что-то зафиксировать в Subversion, ему нужен комментарий фиксации. Если вы не передадите комментарий коммита в командной строке (используя -m message
), Subversion автоматически запустит предпочитаемый вами редактор. Похоже, что ваш редактор emacs, но есть проблема с его запуском.
Либо исправьте emacs, либо установите переменные среды EDITOR
или SVN_EDITOR
в другой редактор, который действительно работает.
Возможно, связано: я вижу аналогичные ошибки на vim
при установке SVN_EDITOR
без указания пути. Из вашего вывода ошибок я вижу, что вы сделали то же самое с emacs
. Попробуйте export SVN_EDITOR=/usr/bin/emacs
. То же самое с /usr/bin/vim
устранило 256 кодов состояния.
Я не могу объяснить, почему. Мне кажется ошибка.
См. это обсуждение vim в OSX 10.5 в 2009 году.
Похоже, svn не может запустить emacs для редактирования комментариев к коммиту.
Если у вас просто есть несколько слов комментариев к вашей фиксации, вы можете использовать:
svn ci dir/filename -m "Made some small changes"
другим вариантом может быть использование опции --editor-cmd
svn. подробнее см. svn help ci
.
поиск в Google svn: system('emacs svn-commit.tmp') returned 256
показывает следующую ссылку в качестве первого результата.
http://jjinux.blogspot.com/2008/03/vim-weird-os-x-105-problem.html
Похоже, что SVN пыталась вызвать emacs, чтобы вы могли отредактировать сообщение журнала фиксации, и что-то не удалось.
Обходной путь: используйте флаг -m, чтобы указать сообщение фиксации в командной строке:
svn ci dir/filename -m "log message here"