czy istnieje sposób sprawdzenia integralności sklonowanego repozytorium.?

9

Sprawdziłem zdalne repozytorium. Teraz wykonałem kilka operacji dodawania pliku do repozytorium. a także (być może) usunięcie niektórych plików z repozytorium. W obu przypadkach git nie był informowany o zmianach. Czy git może sprawdzić integralność repozytorium? i poinformuj mnie, jakie pliki zostały zmienione (czy nie)?

Widziałem ten post 1, ale nie wiem, czy obejmuje on scenariusz, który przedstawiłem powyżej. Czy $git fsckwystarczy? Jeśli usunę plik z lokalnego repozytorium. jak miałby to powiedzieć / pokazać?

Czekamy na odpowiedzi.

shirish
źródło
Spójrz na dzienniki w dwóch repozytoriach? Czy możesz bardziej szczegółowo omówić to, co Cię dezorientuje?
Zoredache,
@Zoredache dziękuję za odpowiedź. Zredagowałem swój post, ale dla jasności, co się stanie, jeśli usunę lub dodam pliki po zrobieniu $git pull origin master. W takim przypadku dzienniki git byłyby identyczne (tak myślę). Aby to przetestować, dodałem kilka plików do repozytorium git. i spróbowałem $git fsck. Nie otrzymałem ani nawet nie powiedziałem, że te pliki nie są częścią repozytorium. Oto, co $git fsckpokazuje wynik :
shirish
$ git fsck Checking object directories: 100% (256/256), done. Checking objects: 100% (1974/1974), done. Jak widać, nie powiedział mi, że niektóre pliki zostały dodane do repozytorium. które są untracked (tj git nic o nich nie wie, jak ja nie był używany $git-addPodobnie, jeśli plik zostanie usunięty nie wiem czy git fsck będzie się dogadać, czy nie Jeśli ktoś ma jakieś pomysły proszę podzielić...
Shirish
Co rozumiesz przez usunięcie plików? Masz na myśli zmianę rzeczy w .gitfolderze? A może twoje pracujące drzewo? Jeśli zmieniłeś rzeczy w swoim pracującym drzewie, użyj git status. Jeśli dokonałeś lokalnych zatwierdzeń, git logpokaże je, a przy odpowiednich opcjach może dać ci listę plików lub pełną łatę.
Zoredache,
ah dzięki, git statuswłaśnie tego szukałem. Powiedział mi, że kilka plików i katalogów, które nie są śledzone. Czy powiedziałby mi również / udostępniłby mi, jeśli pliki zostaną usunięte w podobny sposób? Kolejne pytanie, jak zamknąć to pytanie? Nie widzę sposobu na zamknięcie pytania po udzieleniu odpowiedzi. Jeszcze raz dziękuję @Zoredache
shirish

Odpowiedzi:

6

Wygląda na to, że szukasz git statuspolecenia.

Od człowieka git-status

Wyświetla ścieżki, które mają różnice między plikiem indeksu a bieżącym zatwierdzeniem HEAD, ścieżki, które mają różnice między drzewem roboczym a plikiem indeksu oraz ścieżki w drzewie roboczym, które nie są śledzone przez git (i nie są ignorowane przez gitignore (5) ). Pierwsze to, co zrobiłbyś, uruchamiając git commit; drugi i trzeci to, co możesz zatwierdzić, uruchamiając git add przed uruchomieniem git commit.

Zoredache
źródło