Brak pliku TortoiseSVN w aktualizacji

12

Od czasu do czasu mieliśmy problem z TortoiseSVN (zakładam, że jest to Tortoise, a nie nasze repozytorium SVN), w którym plik zostanie zarejestrowany w repozytorium (przeglądarka repo może tam zobaczyć pliki) i będzie istnieć dla osoby kto je popełnił, ale gdy inna osoba dokona aktualizacji, pliki te nie zostaną dodane do kopii roboczej. Jeśli następnie wybiorę „Kopiuj do kopii roboczej ...” z przeglądarki repo i spróbuję zatwierdzić, pliki są dla mnie traktowane jak nowe, a mój klient próbuje je dodać, co powoduje błąd. Aktualizacja powoduje również błąd (nie wiem, jak to odtworzyć, więc nie wiem, co konkretnie by to spowodowało, i nie pamiętam dokładnych błędów). Muszę następnie usunąć pliki z repozytorium i zatwierdzić je jako nowe. Po tym,

Dostęp do repozytorium można uzyskać za pośrednictwem protokołu svn: // na serwerze z wersją 1.4.6. Jest hostowany na komputerze z systemem Windows Server 2003 działającym jako usługa systemu Windows.

Repozytorium ma następującą strukturę:

[repozytorium] / Code / [projekty]
[repozytorium] / Code / [Website] / * jakaś strona tutaj *
[repozytorium] / Data / [różne pliki danych]
[repozytorium] / References / [dlls / Referencje]

Dzieje się tak prawie wyłącznie z .aspx / .aspx.cs / .aspx.designer.cs i zwykle wszystkie 3 na raz. Jakby cała moja strona nie została dodana do mojego folderu. Stało się tak z uruchomionym i uruchomionym rozwiązaniem Visual Studio, a także bez otwartego Visual Studio.

Czy ktoś już to widział i czy znasz przyczynę / rozwiązanie?

goldenratio
źródło
1
Czy możesz opublikować wersję TortoiseSVN i sposób, w jaki twoja SVN jest hostowana (http: //, svn: //, lokalny itp.) Oraz w jaki sposób (Apache, IIS, VisualSVN itp.), W tym wszelkie inne numery wersji.
Richard Slater
1
Spróbuj także odtworzyć działające katalogi (po prostu stwórz dodatkowy), aby sprawdzić, czy coś poszło nie tak przy pierwszym sprawdzeniu.
recbot
1
Jako pierwszy krok uaktualnij do najnowszej wersji TSVN (teraz 1.6.3). Wierzę, że w 1.6.x był związany błąd, który został naprawiony w wersji 1.6.2.
Milen A. Radev,
2
Ten sam problem występuje z klientem TortoiseSVN 1.7 podłączonym do repozytorium Subversion 1.6. Czy jest gdzieś podobne rozwiązanie?
JNappi,

Odpowiedzi:

10

Czasami też miałem opisany problem. W tej chwili to się powtórzyło. Ta sama sytuacja: wiele plików zostało zmienionych / dodanych / usuniętych / przeniesionych na serwerze SVN od klienta SVN A, a klient B SVN zaktualizował swoją kopię roboczą (używając Tortoise SVN). Po aktualizacji niektóre pliki dodane z A nie są obecne w roboczej kopii B, ale przeglądarka repozytorium pokazuje je we właściwej lokalizacji na serwerze SVN. Ponowna aktualizacja za pomocą Tortoise zawsze twierdzi, że wszystko jest w aktualnej wersji. Również „svn up” w folderze, w którym brakuje plików, mówi, że wszystko jest w bieżącej wersji.

używam

Tortoise SVN 1.6.6, kompilacja 17493 - wersja 64-bitowa

Visual SVN 1.7 (integracja SVN z Visual Studio 2008)

Edycja: Wydaje się, że jest to znany problem, oto rozwiązanie: http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=2379518


źródło
1
Dla każdego innego: Oto bezpośrednie rozwiązanie: dla każdej z kłopotliwych kopii roboczych użyj „Aktualizuj do wersji” i ustaw głębokość kopii roboczej na „W pełni rekurencyjna”.
coding_idiot
3

możesz sprawdzić, czy jest to żółw, czy svn, korzystając z narzędzi wiersza poleceń. wpisz „svn up” w katalogu głównym WC.

Jak mówisz, korzystasz z wersji 1.4.6, nie masz problemu z rzadkimi katalogami. Czy ignorujesz pliki w ustawieniach klienta? Czy jesteś pewien, że Twoje WC wskazuje prawidłowy adres URL w repozytorium i nie zostało przełączone na inną gałąź? (widać to we właściwościach folderu - dostępna jest karta subversion)

Jeśli wykonasz „status svn” w swojej toalecie, powinieneś zobaczyć listę zmienionych plików w katalogu serwera.

gbjbaanb
źródło
3

Ten sam problem wystąpił w przypadku SVN 1.6.2 i 1.6.3 (linia poleceń, Tortoise i Subclipse). więc wydaje się, że problem dotyczy samego SVN. Istnieje następujące obejście problemu - spróbuj przejść do tego samego katalogu - po prostu dodaje brakujące pliki.

al0
źródło
1

Wystąpił również ten błąd z Tortoise SVN z wersją co najmniej 1.6.2 do tego, czego aktualnie używam 1.6.5. „Pobierz najnowsze” nie pobierze plików z repozytorium. Musiałem usunąć katalog, którego dotyczy problem, i pobrać najnowszy katalog nadrzędny, aby ponownie utworzyć katalog i jego zawartość.

gbjbaanb, zdecydowanie nie jest to przypadek ignorowanych plików lub przełączanych gałęzi.


źródło
1

Nie byłem w stanie rozwiązać tego problemu, korzystając z instrukcji zawartych w łączu Daniela, ale zgadzam się, że wydaje się, że jest to podstawowy problem z większością implementacji SVN w systemie Windows.

Aby rozwiązać problem z brakującym folderem, moje kroki były następujące:

  1. „Zaktualizuj do wersji”, wybierając numer zatwierdzenia, zanim jakikolwiek plik w folderze zostanie zmodyfikowany, dodany lub usunięty, i upewnij się, że wybierasz „W pełni rekurencyjny”. (Spowoduje to dziwny błąd w Tortoise. Spodziewane!)
  2. Wykonaj czyszczenie.
  3. Zaktualizuj folder ponownie i powinieneś dostać cały folder!

Mam nadzieję, że pomoże to komuś innemu.

Matt DeKrey
źródło
0

Niestety poprzednie odpowiedzi powyżej nie działały dla mnie. Miałem ten sam problem: w folderze, nad którym pracowałem, było kilka niezaangażowanych obiektów. Ten folder został zaktualizowany o wiele obiektów przez innego użytkownika. Widziałem obiekty tego użytkownika w repozytorium, ale za każdym razem, gdy robiłem aktualizację, nigdy nie dostawałem obiektów tego użytkownika.

Poprawką, która zadziałała, jest użycie TortoiseSVN Revert w folderze.

Allen
źródło