Jako początkujący użytkownik git, kiedy próbuję poświęcić swoją pracę
git commit -a -v
i wpisuję komunikat o zatwierdzeniu w moim edytorze, zamykam plik i otrzymuję ten błąd:
Aborting commit due to empty commit message.
Przeczytałem prawie wszystkie tematy dotyczące tego wydania, zmieniłem redaktorów, w zasadzie próbowałem wszystkiego, ale nic nie pomaga. Co powinienem zrobić?
Jedna rzecz, którą zauważyłem, próbując całego procesu z notatnikiem ++, plik nie mógł zostać zapisany.
Możliwe obejście jest następujące:
git commit -am "SomeComment"
Ale robiąc to, czuję, że w pewnym sensie niweczę cel używania git. Chcę odpowiednio udokumentować swoje zmiany.
Odpowiedzi:
Kiedy ustawiasz edytor w konfiguracji Git, upewnij się, że przekazałeś parametr „-w”, aby wymusić na Git oczekiwanie na wiadomość o zatwierdzeniu, którą wpiszesz w edytorze niestandardowym.
źródło
mvim -f
zamiast-w
flagi."gedit -w"
dla mnie nie działało, ale"gedit -s"
lub"gedit --standalone"
działa.Ten błąd może się zdarzyć, jeśli komentarz dotyczący zatwierdzenia to pojedyncza linia zaczynająca się od
#
znaku. Na przykład otrzymałem ten błąd, gdy w moim oknie edytora tekstu zatwierdzonego pojawił się następujący komunikat:Problem polega oczywiście na tym, że mój komunikat o zatwierdzeniu zaczynał się od
#
znaku, więc git widział tę linię jako komentarz, a co za tym idzie, widział komunikat o zatwierdzeniu jako pusty, ponieważ zawierał tylko komentarze!Poprawka polegała na tym, że mój komunikat dotyczący zmiany zaczynał się od znaku innego niż
#
.W moim konkretnym przypadku umieszczenie identyfikatora Pivotal w nawiasach kwadratowych uszczęśliwiło zarówno git, jak i Pivotal :
źródło
#xxxx Fixed: ...
i zmiana tego naFixed #xxxx: ...
rzeczywiście to naprawiła. Dziękuję Ci.#123 some message
. działał podczas zatwierdzania, ale nie powiódł się później podczas zatwierdzaniarebase
edytora via.Dla Visual Studio Code
Dla atomu
Za wzniosłe
źródło
Jeśli chcesz zatwierdzić z odpowiednią (długą, wielowierszową dokumentacją), ale nie chcesz tej
-m
opcji, to co możesz zrobić (a ja robię, przygotowując swoje commity ) to:git commit -a -F /path/to/doc-commit
”)Krótko mówiąc, użyj oddzielnego pliku (który może znajdować się w dowolnej ścieżce) jako komunikatu o zmianach.
źródło
# my comment
)?Jestem także nowicjuszem w Git. W zasadzie napotkałem ten sam problem, co twój. Rozwiązałem to wpisując:
Powodem jest to, że git nie pozwala na zatwierdzanie bez komunikatów. Musisz powiązać niektóre wiadomości z poleceniem zatwierdzenia.
źródło
Miałem ten problem. Właśnie zainstalowałem 1.8.0 wcześniej i stwierdziłem, że muszę nieco zmodyfikować powyższe. Jestem w tym wszystkim bardzo nowy, ale zasadniczo wydaje się, że przy zatwierdzaniu użyje content.editor, a nie core.editor, przynajmniej jeśli masz coś ustawionego dla content.editor.
Tak było
że wreszcie pozwól mi się zaangażować! Oczywiście użyj dowolnego edytora, którego używasz.
Mam nadzieję, że kiedyś komuś to pomoże!
źródło
Git nie zezwala na zatwierdzenie bez określonego komunikatu. Czy określiłeś komunikat o zatwierdzeniu w oknie dialogowym zatwierdzenia?
Zauważ, że linie zaczynające się od # są traktowane jako komentarz przez Git i nie są traktowane jako komentarze i ignorowane przez Git.
źródło
Najpierw usuń stare wpisy redaktorów:
Ustaw swój edytor:
W przypadku Notepad ++
Za wzniosłe
źródło
Skonfigurowałem mój edytor atomów jako
ale kiedy to zrobiłem
kiedy atom był już uruchomiony, otwierał nową zakładkę do dodawania komentarzy, ale git nie czekał, aż zapiszę plik i natychmiast wyrzucił wiadomość „Aborting”. Kiedy zamknąłem atom i spróbowałem jeszcze raz zatwierdzić, git uruchomił atom i czekał na dodanie komentarzy.
źródło
Na komputerze z systemem Windows dla edytora „Sublime” możemy również dodać następujący wiersz w pliku .gitconfig w następującym folderze [TWÓJ LIST NA DYSKU]: / users / username /
Mam nadzieję, że to pomoże.
źródło
--wait
. Czy masz działający przykład, w którym ścieżka do pliku zawiera spacje, jak wProgram Files
? Dzięki.Oczekuje komunikatu o zatwierdzeniu.
For vim : (też jestem nowicjuszem. Do tej pory pracowałem tylko z vimem)
Po twoim rozkazie
Zostaniesz przekierowany do pliku o tej nazwie
„.git / COMMIT_EDITMSG”
To otwiera się w twoim edytorze (który w moim przypadku jest vim)
Znajdziesz wiele skomentowanego tekstu, który wygląda dokładnie tak, jak to, co widziałeś, kiedy to zrobiłeś
Jeśli zauważysz, możesz zobaczyć pustą linię na górze - tam, gdzie oczekuje komunikatu o zatwierdzeniu. Możesz tutaj wpisać wiadomość dotyczącą zatwierdzenia oraz zapisać i wyjść z edytora. Zrobione!
źródło
Pomogło mi to po wielu próbach i błędach, mam nadzieję, że ktoś uzna to za przydatne.
Miałem już dowiązanie symboliczne Sublime 3 do użycia jako polecenie podrzędne.
Nie mam pojęcia, dlaczego flaga -F poza "" zadziałała.
źródło
subl --help
).Upewnij się, że duże W.
git config --global core.editor "open -a 'Sublime Text 2' -W"
lub użyj następującego polecenia, aby zastąpić istniejący, który nie działa poprawnie.
git config --replace-all core.editor "open -a 'Sublime Text 2' -W"
źródło
Aby komentować w Notepad ++ (Windows), wykonaj następujące czynności:
1. Utwórz gdzieś plik wsadowy (np. C: \ Users \ me \ scripts \ npp.bat)
Zapisz to w pliku wsadowym (w zależności od tego, gdzie jest zainstalowany twój Notepad ++):
2. Zapisz plik wsadowy.
3. Otwórz .gitconfig (który zwykle znajduje się w folderze użytkownika systemu Windows) i upewnij się, że w
sekcji [core] masz:
Lub uruchom:
4. Teraz wykonaj jakieś zatwierdzenie i otworzy Notepad ++, git commit będzie teraz czekał, aż okno notepad ++ zostanie zamknięte.
źródło
Na początek upewnij się, że Twój git jest poprawnie skonfigurowany, aby otworzyć jakiś rodzaj zachęty edytora (Visual studio / sublime / notepad ++ / atom itp.), Aby przejść dalej.
.gitconfig
plik i odkryłem, że w moim edytorze brakuje-w
parametrugit config --global core.editor "code -w"
polecenie i ponownie sprawdziłem.gitconfig
plik, zauważyłem, że-w
został tam poprawnie dodany.Mam nadzieję, że to pomoże innym nowicjuszom, takim jak ja.
źródło
Naprawiłem problem, przełączając się z mojego fantazyjnego edytora MacVim, który otwiera nowe okno, do standardowego domyślnego vima w / user / bin / vim, który otwiera się w tym samym oknie co powłoka, z której została wywołana, i wydaje się, że zostało to naprawione problem.
źródło
git config --global core.editor "mvim -f"
Mam ten problem i dowiedziałem się, że jeśli nie dodam komentarza po zatwierdzeniu, to daje mi ten błąd. Jeśli przeskoczę, aby od razu wrócić do głównego basha, nie zatwierdza się, tylko dla większej jasności używam GIT Bash, a nie innego edytora
źródło
Kiedy użyłem pełnej ścieżki do pliku atomu, nie działało, więc zamiast używać:
Użyłem:
i działało dobrze. Powodzenia!
WAŻNE: Najpierw upewnij się, że atom zaczyna poprawnie wywoływać go bezpośrednio (atom) z linii poleceń, których używasz.
źródło
rozwiązanie dla błędu zatwierdzenia
Jak pokazałem powyżej, istnieje pole zatwierdzenia, które należy wprowadzić podczas zatwierdzania, jest to zasadniczo do kontroli wersji i zrozumienia zmian dla każdego zatwierdzenia.
Jeśli tego nie wpiszesz, pojawi się błąd: Przerwanie zatwierdzenia z powodu pustego komunikatu zatwierdzenia
Uwaga: powyższe działa tylko przy zatwierdzaniu i ściąganiu plików Rstudio.
źródło
Pojawił się ten błąd i mimo że użyłem
git config --global core.editor "code -w"
, to nadal nie czekało, aż zamknę plik. Po prostu przerwałby natychmiast.Mój problem polegał na tym, że uruchomiłem to polecenie wcześniej
git config core.editor "code"
.Wygląda na to, że
core.editor
(co, jak przypuszczam, jest specyfikacją lokalnego katalogu roboczego), miało pierwszeństwo--global core.editor
.Jeśli
git config --global core.editor "code -w"
(lub jakikolwiek edytor, którego próbujesz użyć) nie działa dla Ciebie, spróbuj pominąć rozszerzenie--global
.źródło