Pytanie Wracając do poprzedniego zatwierdzenia w Github Desktop


Próbuję użyć GitHub Desktop (tj. Aplikacji GUI - NIE linii poleceń), aby powrócić do poprzedniego zatwierdzenia (w tej samej gałęzi). Coś, co bym pomyślał, jest podstawową cechą, ponieważ jest to główny powód używania kontroli źródła w pierwszej kolejności.

Widzę, że można cofnąć zatwierdzenie, ale to nie jest to, czego chcę, ponieważ tworzy nowe zatwierdzenie. Chciałbym po prostu wrócić do tej opcji, tak jakbym mógł wrócić do innej gałęzi.

Czy to możliwe, czy jest to ograniczenie pulpitu Github i potrzebuję użyć do tego linii cmd?


21
2018-01-14 13:25


pochodzenie


to zależy od tego, co chcesz zrobić. Jeśli chcesz wrócić lokalnie, na przykład, aby na przykład utworzyć nowy oddział, prawdopodobnie po prostu dwukrotnie klikniesz commit lub poszukaj opcji, która powinna się nazywać "checkout". Jeśli chcesz anulować zmiany z tego zatwierdzenia, to cofnięcie go jest drogą do zrobienia, ponieważ w przeciwnym razie zmieniałbyś historię, która jest zła. - njzk2


Odpowiedzi:


Ogólnie rzecz biorąc, możesz wrócić do zatwierdzenia w historii git reset.


Nie jest to możliwe z GitHub Desktop. GitHub Desktop jest raczej narzędziem do synchronizowania twoich repozytoriów, a nie w pełni funkcjonalnym klientem GUI.
Ale to nie znaczy, że musisz korzystać z wiersza poleceń, ponieważ istnieją alternatywy. Możesz znaleźć listę tutaj. Wspomnieć o kilku (to wsparcie git reset):


Oto jak to zrobić w linii poleceń. Większość klientów udostępnia to w swoim interfejsie użytkownika przy użyciu tego samego słownictwa (zazwyczaj można wybrać zatwierdzenie i zresetować do niego poprzez menu kontekstowe).

Wrócisz do poprzedniego zatwierdzenia z

git reset HEAD^

lub kilka innych zatwierdzeń (na przykład 3) przez

git reset HEAD^3

lub do konkretnego zatwierdzenia przez

git reset f7823ab

Pamiętaj, że domyślnie opcja --mixed jest przekazywane do git reset. Tak więc wszystkie wprowadzone zmiany, ponieważ to zatwierdzenie, które zresetowałeś, pozostaną.

Aby uzyskać oryginalny stan zatwierdzenia, który chcesz "przywrócić", musisz przejść --hard. Na przykład:

git reset f7823ab --hard

25
2018-01-14 13:35



ok, dzięki, to zdecydowanie przydatne, ale miałem nadzieję, że będę mógł to zrobić w GitHub Desktop, np. za pomocą GUI - dr.mo
AFAIK GitHub Desktop jest bardziej narzędziem do synchronizacji swoich repozytoriów. Dla twoich potrzeb sugerowałbym użycie innego klienta GUI, takiego jak TortoiseGit lub SourceTree. Istnieje również lista klientów GUI tutaj. Zwykle mają takie samo słownictwo, jak wspomniano powyżej. - SevenEleven
Zdecydowanie nie używam GUI-Clients do codziennych operacji git. Szybko nauczyłem się git i odkryłem, że niektórzy gui-klienci dodają bezsensowne parametry do poleceń. Również polecenia konsoli nigdy się nie zmieniają na żadnej platformie. - Altoyyr
czy jest tak, że mogę po prostu wyszukiwać i wyświetlać na podstawie wartości skrótu? Nie mogę znaleźć żadnej opcji wyszukiwania! - Honey
Dzięki za pomoc w git polecenia zamiast mówić "GitHub Desktop tego nie robi" :) - rinogo


Aktualizacja 2018

To jest możliwe!

1. Click History.  
2. In the commit history list, click the commit you'd like to revert.  
3. Right-click the commit and click Revert This Commit.  

Dokumentacja z GitHub


3
2018-06-29 14:27