2012-08-16 20 views
6

Chciałbym wiedzieć, jak zrobić pull z repo na podstawie SHA?git pull na podstawie SHA

git pull origin master 

Powyższy kod spowoduje wznowienie pracy nadrzędnej po wykonaniu git add remote.

+0

Co dokładnie chcesz osiągnąć? –

Odpowiedz

15

git ciągnąć dwie rzeczy dla Ciebie:

  1. pobiera konkretny oddział z repozytorium
  2. łączy go z bieżącej gałęzi.

Wygląda na to, że chcesz pobrać konkretną wersję z repozytorium i połączyć ją z bieżącą gałęzią.

Najlepszym sposobem na to jest dwa polecenia:

git fetch origin 
git merge YOUR_SHA_HERE 

Jeśli to, co chcesz, to po prostu zobaczyć, co jest w określonej wersji z repozytorium i sprawiają, że drzewo działa, ale nie do scalenia, to byś chciał:

git fetch origin 
git checkout YOUR_SHA_HERE 

Jeśli to, co chcesz, aby uzyskać konkretną wersję, a potem to nowy „mistrz” (lub inny oddział), wtedy chcesz uruchomić

git fetch origin 
git reset --hard YOUR_SHA_HERE 

Wszystkie z nich pobierze nowy kod z repozytorium (poprzez "git fetch origin"), ale istnieją różne sposoby na połączenie z/zastąpienie obecnego kodu.

5

Nie sądzę, że istnieje sposób na pobranie tylko części oddziału opartej na SHA.

Co w tym złego:

git pull 
git reset --hard <sha>