2010-10-11 7 views
18

próbuję popełnić nową wersję mojego repozytorium SVN, ale ja spotkałem się z tego błędu:Commit nie powiodło się błąd, gdy popełniania nową wersję do repozytorium svn

svn: Commit failed (details follow):
svn: Could not use external editor to fetch log message; consider setting the $SVN_EDITOR environment variable or using the --message (-m) or --file (-F) options
svn: None of the environment variables SVN_EDITOR, VISUAL or EDITOR are set, and no 'editor-cmd' run-time configuration option was found new-computers-computer:trunk newcomputer$

Co się stało?

+0

@Inne, ten komunikat o błędzie nic nie znaczy, jeśli jesteś nowym użytkownikiem SVN lub wiersza poleceń. Sprawdź zaakceptowaną odpowiedź Blackcoata, aby uzyskać pomocną odpowiedź. – Sandy

Odpowiedz

26

Justin,

każdym razem popełnić z Subversion, trzeba napisać podsumowanie tego, co jest zaangażowana (czyli wiadomość commit). Błąd polega na tym, że Subversion próbuje uruchomić edytor tekstowy, aby można było napisać komunikat zatwierdzenia, ale edytor nigdy nie jest uruchamiany. Ustawienie SVN_EDITOR w twoim .bash_profile zrobi lewy. Oto kilka szczegółowych instrukcji krok po kroku, jak ustawić vim jako domyślny edytor używany przez svn: Original link dead, replaced with archive.is mirror

Alternatywnie, jak zasugerowano w komunikacie o błędzie, możesz załadować wiadomość zatwierdzenia z istniejącego pliku za pomocą -f, lub przekazać wiadomość z numerem -m.

Przykłady:

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 
+0

Co zrobić, jeśli chcę ustawić TextMate jako domyślny edytor tekstu? –

+1

W swoim .bash_profile, dodaj: export EDITOR = "$ HOME/bin/mate -w" – Blackcoat

+0

Podobnie, możesz ustawić Sublime jako domyślną, wykonując 'export EDITOR = 'subl -w''. Aby uzyskać szczegółowe informacje na temat konfiguracji wiersza poleceń dla Sublime, zobacz http://www.sublimetext.com/docs/2/osx_command_line.html – Blackcoat

16

Jeśli chcesz ustawić domyślny edytor, który będzie używany przy każdym uruchomieniu

svn commit 

Spróbuj następujące polecenie w powłoce:

export SVN_EDITOR=nano 

Spowoduje to ustawienie nano jako edytora tekstowego dla wiadomości zatwierdzenia. Odtąd, gdy zadzwonisz pod numer svn commit bez flagi -m, otworzy się nano. Po zamknięciu nano SVN będzie kontynuował zatwierdzanie.

+0

Co się stanie? Zastanów się nad dodaniem opisu do swojej odpowiedzi. – bahrep

+0

zasadniczo, gdy trzeba ustawić domyślny edytor, należy użyć polecenia z góry. – Kersh

0

Miałem podobny problem podczas próby importowania kodu niesklasyfikowanego do nowego repozytorium, w oparciu o odpowiedzi zamieszczone na tym pytaniu udało mi się rozwiązać mój problem (dziękuję).

Dzielę polecenia Kiedyś importować lokalnego projektu do SVN na użyciu Apache/http:

Gdzie TestCodeDir jest projekt i nie został jeszcze wersji.

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

Uwaga: Musisz poprawnie skonfigurować serwer apache i uruchomić go.

Mam nadzieję, że to może komuś pomóc.

2

Miałem również ten sam problem, jednak był w systemie Windows. Byłem w stanie rozwiązać problem, używając -m (--message) i dostarczając komunikat zatwierdzenia.

Próbowałem również używać cygwin z komunikatem commit i to zadziałało.

Powiązane problemy