2013-07-15 14 views
5

Mam pytanie dotyczące cvs. Kiedy dodaję dwa pliki do CVS używając funkcji dodawania Tortoise CVS. Pojawiają się następujące komunikaty o błędach:cvs dodawane niezależnie przez drugie pary

cvs add: ' **.cpp' added independently by second party. 

Czy istnieje elegancki sposób rozwiązania tego problemu? Dzięki.

Odpowiedz

4

Masz konflikt z lokalnym i repozytorium. Najłatwiejszy sposób, o którym wiem, to kopiowanie lokalnych danych i sprawdzanie najnowszej wersji z repozytorium. Następnie zmodyfikuj nowe wypakowane pliki lokalnymi plikami, które chcesz zatwierdzić.

0

Gdy ten błąd jest widoczny, pliki lokalne/katalogi mogą być niezgodne z tymi plikami na serwerze CVS.

Zgadzam się, że pierwszą rzeczą, aby spróbować to: 1. rów lokalny obszar roboczy (zachować kopię zapasową niego) i kasy czystą najnowszą wersję.

Napotkałem sytuację, w której przeniesienie kopii lokalnej z drogi i sprawdzenie nowej czystej kopii nie rozwiązało problemu. Więc . . BĄDŹ OSTROŻNY! Utwórz kopię zapasową obszaru roboczego i plików przed ich edycją. Następna sprawa: 2. Edytuj plik CVS/wpisów i usuń wszelkie pliki problemów.

Jeśli to nie rozwiąże problemu może być 3. logowania do serwera CVS i usuwać katalogi być bardzo ostrożny!

Komenda cvs add zmienia pliki na serwerze (tak, nawet bez zatwierdzenia). Po zakończeniu dodawania cvs do katalogu, serwer cvs tworzy katalog na serwerze. Więc jeśli cvs add jest zrobiony z katalogów i commitów nie jest zrobiony serwer cvs znajduje się w stanie, w którym dodanie cvs może powodować konflikt. W moim przypadku dodałem katalog zawierający pewne dowiązania symboliczne do innych katalogów w drzewie. CVS tego nie polubił, a polecenie nie powiodło się, pomijając lokalną kopię i serwer cvs. Nie mogłem zatwierdzić zmian w uszkodzonym obszarze roboczym, a jednak w czystym obszarze roboczym nie mogłem dodać cvs, zanim usunąłem je na serwerze cvs.