Git: potrzebny był pojedynczy błąd wersji


101

Zainicjowałem nowy git w moim projekcie i do tej pory mam tylko dwa zatwierdzenia. Mój dziennik wygląda jak poniżej

git log
commit e515e5b8dcbd8f1ea4a7a7d4a1efb82a1a0aee7a
Author: Olkun Mustafa <olkun.mustafa@gmail.com>
Date:   Fri Oct 3 10:04:20 2014 +0300

    Temp commit

commit 71781bf0a7807351a56d5155dac94169ea700527
Author: Olkun Mustafa <olkun.mustafa@gmail.com>
Date:   Fri Oct 3 10:01:42 2014 +0300

    First Commit

Kiedy próbuję zmienić bazę tych zatwierdzeń, otrzymuję błąd jak poniżej

git rebase --interactive HEAD~2
fatal: Needed a single revision
invalid upstream HEAD~2

Całkiem poszukuję w Google, ale do tej pory nie znalazłem rozwiązania.


2
Jaki wynik po tym, jak próbowałeś tutaj osiągnąć?
Oliver Charlesworth

Czy próbujesz cofnąć swoje zatwierdzenia?
mehmetseckin

Odpowiedzi:


187

W twoim przypadku nie ma HEAD~2, ponieważ masz tylko 2 zatwierdzenia, stąd Needed a single revisionkomunikat o błędzie „ ”.
Próbować:

 git rebase -i --root

zobacz więcej w "Czy zmienić pierwsze zatwierdzenie projektu za pomocą Git? "


1
Dzięki! Pracuje dla mnie.
YuLong Xiao

1
Otrzymywałem tylko "fatal: invalid upstream head ~ 2", mimo że miałem cztery zatwierdzenia w dzienniku. Nie wyświetlał się komunikat „pojedyncza wersja”. Jednak to naprawiło mnie! Dzięki!
Austen Hoogen

7

Nie dotyczy to Twojego przypadku, ale może pomóc innym. Jeśli w systemie Linux, upewnij się, że HEADjest to wielkie litery. Jeśli używasz małych liter, headjak w pierwszym przykładzie poniżej (ponieważ jesteś przyzwyczajony do pracy w systemie Windows lub Mac, a te pozwalają na małe litery head), otrzymasz fatal: Needed a single revisionbłąd!

Lub możesz użyć @jako aliasu dla HEAD, wtedy nie musisz się martwić, że zapomnisz wpisać go wielką literą.

# wrong on linux
git rebase --interactive head~2

# correct on linux
git rebase --interactive HEAD~2

# correct on all
git rebase --interactive @~2

Dziękuję bardzo! Walczyłem z tym przez kilka godzin i skapitalizowałem HEADto!
Jinsong Li

1
⁺¹ za poradę @.
Hi-Angel,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.