Usunięcie komita z repozytorum GitHub

0

Próbuję usunąć ostatniego komita ale za bardzo nie wiem jak to zrobić. Na githubie się chyba nie da, tylko trzeba to zrobić jakoś w konsoli ? Jeżeli jest na to jakiś prosty tutorial to proszę o niego. Wiem że w interenecie jest tego dużo ale póki co mi nie wychodzi..

0

Zrób reverta.

0

możesz usunąć ten commit localnie - jeżeli nie będzie to problem dla Ciebie i zrób push z --force'em

0

"Commita" już lepiej wygląda niż komita. Szanujmy nasz język :).

0

dzieki za odpowiedzi, zrobiłem tak
git reset --hard komit do którego chce wrocic
git push --force

czy to zadziałało jak revert ?

0

Nie, to nie zadziałało jak revert. Gdy robisz reverta masz to mniej więcej tak później w historii:
0. Wcześniejszy commit.

  1. Mój commit któy chce cofnąć. jest w historii commitów.
  2. Cofnięcie wcześniejszego commita. Też zostaje w historii commitów.

Po tym co zrobiłeś jest tak:
0. Wcześniejszy commit.

Dodam, że jeśli tylko Ty sam pracujesz na tym repozytorium, to o ile wiesz co robisz zmieniając w ten sposób historie commitów, to jest jakieś rozwiązanie. Ale jak kilka osób pracuje na tym samym repozytorium to takich rzeczy się nie robi, bo mogą strasznie namieszać i spowodować mnóstwo problemów u innych osób. (Znaczy można zrobić, o ile wszyscy są tego świadomi i konsekwencji, ale nie jesteś jeszcze na tym etapie).

5
Mały Pomidor napisał(a):

git push --force

Taa...
user image

Wiesz, że jakbyś zrobił takie coś w pracy, to byłby Twój pierwszy dzień na OIOMie? :)

Z lokalną historią rób sobie co chcesz, po to jest Git. Ale jak coś opublikujesz, to nie ruszaj.

0

Chodziło mi o to żeby się pozbyć tego, żeby inni nie mieli dostępu także spoko.
Tylko teraz mam pytanie bo na githubie mam starszą wersję o ten komit, a chciałbym wrzucić go jeszcze raz tylko bez kilku plików.

Skoro zakomitowałem to już wcześniej czyli mam to zakomitowane lokalnie, teraz muszę to jakoś na nowo wrzucić na github tylko właśnie bez tych plików. w VisualStudio już nie mam możliwości wybrania które pliki chcę zakomitować bo są one już zakomitowane wszystkie. Co zrobić w takiej sytuacji ? Czy byłby w stanie mi ktoś wytłumaczyć w 2 zdaniach jak to działa, czy da się wgl to zrobić ?

0
Autor napisał(a):

Chodziło mi o to żeby się pozbyć tego, żeby inni nie mieli dostępu także spoko.
Tylko teraz mam pytanie bo na githubie mam starszą wersję o ten komit, a chciałbym wrzucić go jeszcze raz tylko bez kilku plików.

Skoro zakomitowałem to już wcześniej czyli mam to zakomitowane lokalnie, teraz muszę to jakoś na nowo wrzucić na github tylko właśnie bez tych plików.

To w końcu wykonałeś te instrukcje?

git reset --hard komit do którego chce wrocic
git push --force

Bo jeśli tak, to nie masz nic lokalnie zakomitowanego, a prawdopodobnie także i plików na dysku.

w VisualStudio już nie mam możliwości wybrania które pliki chcę zakomitować bo są one już zakomitowane wszystkie. Co zrobić w takiej sytuacji ? Czy byłby w stanie mi ktoś wytłumaczyć w 2 zdaniach jak to działa, czy da się wgl to zrobić ?

Najlepiej nie używać do tego celu Visual Studio tylko jakiegoś softu przeznaczonego do Gita i nie ukrywającego 90% jego możliwości przed użytkownikiem.

0

moze:
git checkout (hash commita ktory chcesz zachowac)
git branch nazwa
git push origin nazwa
git push origin :nazwa_brancza_do wywalenia

0

@somekind, tak wykonałem tą instrukcje, na githubie tych plików nie mam ale w solucji na dysku są.

A co najlepiej używać do gita ? Może na początek coś prostszego od konsoli ?. Który program polecacie ?

0

Konsola jest dobra na początek. Przeczytaj git booka (https://git-scm.com/book/en/v2).

1 użytkowników online, w tym zalogowanych: 0, gości: 1