Получение ошибки при попытке зафиксировать с помощью Subversion в Mac OS X

Используя Subversion, я пытаюсь зафиксировать:

 svn ci dir/filename

И я получаю это:

svn: system('emacs svn-commit.tmp') returned 256

Что это значит? Как я могу это исправить?


person Satchel    schedule 05.01.2010    source источник
comment
Я предполагаю, что ваш основной редактор НЕ emacs, иначе вы бы сразу поняли сообщение об ошибке.   -  person Ether    schedule 06.01.2010


Ответы (5)


Когда вы пытаетесь что-то зафиксировать в Subversion, ему нужен комментарий фиксации. Если вы не передадите комментарий коммита в командной строке (используя -m message), Subversion автоматически запустит предпочитаемый вами редактор. Похоже, что ваш редактор emacs, но есть проблема с его запуском.

Либо исправьте emacs, либо установите переменные среды EDITOR или SVN_EDITOR в другой редактор, который действительно работает.

person Adam Batkin    schedule 05.01.2010

Возможно, связано: я вижу аналогичные ошибки на vim при установке SVN_EDITOR без указания пути. Из вашего вывода ошибок я вижу, что вы сделали то же самое с emacs. Попробуйте export SVN_EDITOR=/usr/bin/emacs. То же самое с /usr/bin/vim устранило 256 кодов состояния.

Я не могу объяснить, почему. Мне кажется ошибка.

См. это обсуждение vim в OSX 10.5 в 2009 году.

person Anm    schedule 14.04.2011

Похоже, svn не может запустить emacs для редактирования комментариев к коммиту.

Если у вас просто есть несколько слов комментариев к вашей фиксации, вы можете использовать:

svn ci dir/filename -m "Made some small changes"

другим вариантом может быть использование опции --editor-cmd svn. подробнее см. svn help ci.

person Wolfgang    schedule 05.01.2010

поиск в Google svn: system('emacs svn-commit.tmp') returned 256 показывает следующую ссылку в качестве первого результата.

http://jjinux.blogspot.com/2008/03/vim-weird-os-x-105-problem.html

person Community    schedule 05.01.2010
comment
Этот пост, на который вы ссылаетесь, является проблемой плагина Vim. - person Greg Hewgill; 05.01.2010
comment
такая же проблема, несмотря ни на что, это проблема редактора, а не проблема svn. - person ; 05.01.2010

Похоже, что SVN пыталась вызвать emacs, чтобы вы могли отредактировать сообщение журнала фиксации, и что-то не удалось.

Обходной путь: используйте флаг -m, чтобы указать сообщение фиксации в командной строке:

svn ci dir/filename -m "log message here"
person Jim Lewis    schedule 05.01.2010