2010-05-04 18 views
19

Właśnie zmieniłem pracę. Mój poprzedni pracodawca używa Subversion, mój nowy pracodawca używa Perforce.Perforce dla użytkownika Subversion?

Czy są jakieś zasoby, które pomogą mi, jako użytkownik, zmienić mój model mentalny z Subversion na Perforce? Jakie są analogiczne do zwykłych poleceń SVN? Które koncepcje są realizowane inaczej?

Nie jestem szczególnie zainteresowany zaletami i wadami Perforce vs Subversion - decyzja została podjęta. Jest wiele innych pytań na temat S.O. obejmujące to. Chciałbym wiedzieć, co muszę poprawić psychicznego (lub nie).

Odpowiedz

6

Perforce i Subversion są dość podobne, oba mają funkcję atomowego zatwierdzania grup plików i rozgałęzienia opartego na ścieżce.

Perforce posiada:

a) Zestawienia zmian oczekujące - można grupować pliki, które są na grupy edycji i manipulować grup.

b) Specyfikacje klienta - możesz odwzorować repozytorium na lokalną przestrzeń roboczą w dość skomplikowanych schematach.

c) Bez zewnętrznych - więc nie można zmapować tej samej części repozytorium do wielu lokalizacji w przestrzeni roboczej lub mapować innych repozytoriów do podkatalogów w przestrzeni roboczej.

d) Merge-tracking, który jest nową funkcją Subversion.

e) Silne połączenia z serwerami: przed edycją pliku należy poinformować serwer, a serwer wykorzystuje te informacje, aby dobrze poznać lokalny stan przestrzeni roboczej, co przyspiesza aktualizacje.

4

Kilka rzeczy przychodzi na myśl (Użyłem perforce cztery lata temu - rzeczy mogły się zmienić).

  • blokowanie - perforce wymaga zablokowania plików, nad którymi pracujesz. Subversion tego nie robi.
  • lista zmian - lista zmian jest podstawą do pracy z perforce. Każde zatwierdzenie dotyczy listy zmian. Są mniej ważne w subwersji.

This blog post może pomóc w dokonaniu przejścia.

+1

Jeśli chodzi o blokowanie: Perforce _may_ wymaga uzyskania blokady plików, nad którymi pracujesz. Jednakże nie wymaga powiadomienia serwera, że ​​pracujesz nad plikami (w przeciwieństwie do subversion, z tego, co pamiętam). –

+0

@ Caleb Huitt - cjhuitt - Nie jestem czarodziejem z Perforce, ale z tego, co widziałem, wierzę, że Perforce blokuje lokalne pliki, których nie sprawdziłeś. To jest największa różnica między Perforce i Subversion i, moim zdaniem, największym bólem głowy przy przełączaniu. Nie blokuje jednak * serwera *. Wielu użytkowników może pobrać ten sam plik, a Perforce spróbuje je scalić. – rtperson

+3

Uważaj na terminologię - Perforce sprawia, że ​​plik jest tylko do odczytu. To nie jest "blokowanie", które jest inną funkcjonalnością dla systemów kontroli Źródła - np. możesz zaznaczyć pliki w Perforce, które muszą być zablokowane przed edycją. A SourceSafe (chyba) wymaga zablokowania wszystkich plików przed ich edycją. –

1

Właśnie przesunąłem się w drugą stronę. Mój poprzedni pracodawca używa Perforce (serwery Linux, Mac & klientów Windows), mój nowy pracodawca przechodzi na SVN. Oto, w co się natknąłem:

  • Nie tęsknie za rozgałęzieniem Perforce. Mogło to być jednak otoczenie.
  • Musisz zablokować! Ale przynajmniej możesz ustawić wiele zamków i masek.
  • I znienawidzony „wiersza poleceń” z konieczności, można się do tego przyzwyczaić, ale to nigdy nie było proste.

Nadal nie jestem fanem Perforce, więc ymmv. Głównie przyzwyczaić do korzystania z dostarczonego UI, zamykając jak wymaga pracodawca, i uważać, na których listy zmian na swoją pracę (bardzo łatwo dostać pochowany w listach zmian).

0

Perforce jest tak dużo szybciej niż SVN, ponieważ wszystkie check-out są przechowywane na serwerze, dzięki czemu nie trzeba sprawdzać każdy plik na aktualizację. SVN działa znacznie lepiej, gdy odłączony od sieci - z Perforce trzeba poinformować serwer kiedy zrobiłeś kasę. To GUI systemu Windows jest naprawdę dobre. Wiersz poleceń nie jest tak prosty jak SVN. Google go używa!

1

Ja też właśnie teraz nauki z konieczności, a co byłoby przydatne dla mnie jest przewodnikiem poleceń P4, które są swego rodzaju odpowiednikiem polecenia SVN. Zacznę (ktoś bardziej biegły może rozwinąć/edytować tę odpowiedź):

svn commit  ... p4 submit 
svn update  ... p4 sync 
... 
+3

Oto oficjalny dokument z Perforce z SVN <-> P4 poleceń: http://kb.perforce.com/article/301/mapping-subversion-terms-and-commands-to-perforce – Janek