2012-10-06 14 views
21

Pracowałem nad projektem programistycznym przy użyciu komputera z systemem Windows jako serwera testowego. Ostatecznie chciałbym, aby wersja "na żywo" znalazła się na komputerze z systemem Linux. Próbując przetestować na komputerze z systemem Linux, stało się oczywiste, że muszę zmienić przypadek kilku nazw plików, ponieważ system Windows był niewrażliwy na wielkość liter, ale Linux nie był. Kiedy zmieniłem nazwę pliku w Windows, TortoiseSVN rozpoznał, że plik się zmienił i odpowiednio oznaczył moje foldery. Jednak kiedy próbowałem wprowadzić zmiany, TortoiseSVN nie tylko powiedział mi, że nie wprowadzono żadnych zmian, ale w rzeczywistości cofnął wszystkie zmiany nazw plików, które powróciłem do ich pierwotnego przypadku.Zmiana nazwy pliku z TortoiseSVN na Windows

Moje pytanie brzmi, czy istnieje prosty sposób na zmianę nazwy pliku z komputera PC z systemem Windows i czy zmiany pojawiają się w moim repozytorium? Chciałbym uniknąć wszelkiego rodzaju usuwania, zatwierdzania, zamiany, zatwierdzania scenariusza, aby utrzymać moje porządki, jeśli to możliwe. Dzięki!

+1

Co jest nie tak z 'svn ren' (zmiana nazwy)? W TSvn kliknij plik prawym przyciskiem myszy i wybierz polecenie "Zmień nazwę" z menu kontekstowego. –

Odpowiedz

21

Użyj Zmień nazwę opcji w Tortoise SVN z menu kontekstowego. Zobacz szczegóły here

Kiedy zmieniłeś wielkość liter kilku nazw, innymi słowy zmieniłeś nazwy plików - stały się poza kontrolą wersji - to dlatego klient SVN zauważył, że zniknęły pliki, które były pod kontrolą wersji (najwyraźniej tak się stało, ponieważ klient SVN nie został prawidłowo poinformowany).

+1

Używanie opcji Zmień nazwę w Tortoise działało świetnie! Próbowałem po prostu zmienić nazwę pliku w Eksploratorze Windows. Dzięki, pmod! –

+0

Utknąłem w tym przez jakiś czas, aż zrozumiałem, że musisz zatwierdzić folder, a nie plik. Może warto to dodać! – Ewanw

+0

@Ewanw powinieneś być w stanie zatwierdzić wybrane pliki, a także cały folder - to zależy od użytkownika. To jest to samo, jeśli masz tylko "jedną zmianę", ale w ogólnym przypadku przy wyborze poszczególnych plików masz lepszą kontrolę nad tym, co powinno zostać zatwierdzone. – pmod

8

Zauważyłem, że SVN Tortoise ma ustawienie dla automatycznej naprawy zmiany nazwy pliku. Domyślnie jest ustawiona na true, więc jeśli zmienisz tylko wielkość liter w nazwie, to cofniesz zmiany dla ciebie ... bezgłośnie i bezlitośnie dodam, bardzo irytujące ustawienie domyślne w mojej opinii.

Na szczęście po przejściu do Ustawień TortoiseSVN-> Zaawansowane-> FixCaseRenames można zmienić na false i nie będzie już automatycznie poprawiać skrzynek. Setting Location

+0

DZIĘKUJEMY! Chciałem po prostu połączyć dwie gałęzie, a moi projektanci utworzyli ten sam folder z różną wielkością liter. Miałem szaleć. – Chriszuma

1

Jeśli ktoś szuka w jaki sposób to zrobić w SmartSVN na Windows (system operacyjny wielkości liter), kroki są:

  1. Wybierz plik w przeglądarce, w menu Modyfikuj -> Zmień nazwę i używać nazwy temp (np dodać X na końcu nazwy pliku), popełnić zmienia
  2. Wybierz plik w przeglądarce, w menu Modyfikuj -> Zmień nazwę i używać poprawnej nazwy pliku w prawidłowym przypadku popełnienia zmian

Tylko w takim przypadku dziennik pliku zostaną zapisane.