Program do synchronizacji plików pomiędzy katalogami

0

Hej.
Opis problemu: powiedzmy, że mamy kod z projektem na zdalnym serwerze. Mamy na windowsie podmapowany katalog. Otwieramy kod w ulubionym IDE i pracujemy nad kodem. Niestety czasami się jednak zdarza, że połączenie z tym serwerem jest niestabilne i wszystko niesamowicie "zmula". Próba otwarcia/zapisania pliku trwa wieki, tym bardziej jeżeli wtyczki do IDE nie są pisane pod kątem tego, że zapis/odczyt nie musi być natychmiastowy.

Jakie polecacie najprostsze narzędzie do synchronizacji plików pomiędzy katalogami? Chodzi o to, że mam kopię kodu na swoim komputerze, robię zmiany, uploaduję do docelowego katalogu. Buduję zdalnie poprzez ssh. Po zaciągnięciu zmian dokonanych przez innych użytkowników synchronizuję pliki ze swoim lokalnym katalogiem. Itd...

OS: Windows i Linux

3

yyyyyy -> GIT (tym bardziej zadziwiająca jest data rejestracji konta)

http://s2.quickmeme.com/img/e5/e56fa71db9387e9602b2b5cfe418cc352d6ac7d06a41f7543c2caf7f8fee8343.jpg

[edit] : dam jeszcze linka - bo opisany przez Ciebie flow programowania woła o pomstę do nieba - https://git-scm.com/

0
axelbest napisał(a):

yyyyyy -> GIT (tym bardziej zadziwiająca jest data rejestracji konta)

http://s2.quickmeme.com/img/e5/e56fa71db9387e9602b2b5cfe418cc352d6ac7d06a41f7543c2caf7f8fee8343.jpg

[edit] : dam jeszcze linka - bo opisany przez Ciebie flow programowania woła o pomstę do nieba - https://git-scm.com/

Chyba się nie rozumiemy. Czy zrozumiałeś to w ten sposób, że kod jest trzymany w jednym miejscu na serwerze i wszyscy pracują na tej kopii? To nie. Jeśli chodzi o system kontroli wersji to mamy svn. Ale każdy pracuje na zdalnych serwerach, ponieważ lokalnie nawet nie jest się w stanie ściągnąć wszystkich zależności by zbudować binarkę.
Wygląda to tak, że po ssh się łączysz z serwerem, checkoutujesz kod i buildsystem i na nim pracujesz. To w jaki sposób pracujesz, to twoja sprawa. Możesz i w vimie wszystko pisać. Wygodniej jednak jest mieć podmapowany ten serwer lokalnie i otwierać kod w twoim ulubionym IDE. Wszystko fajnie działa dopóki, tak jak wspomniałem, nie ma problemów z jakością połączenia z serwerem, gdzie trzymasz swoje working copy

0

Co jest powodem niemożności ściągnięcia projektu lokalnie, skoro i tak dostęp do projektu macie w pełni tylko ze zdalnie? Svn? Czy mysleliscie nad przejściem na gita? Skoro projekt jest tak duży to czy często macie konflikty (svn bardzo się przyczynia do tego)?

0
axelbest napisał(a):

Co jest powodem niemożności ściągnięcia projektu lokalnie, skoro i tak dostęp do projektu macie w pełni tylko ze zdalnie?

Ściągnąć sobie można, ale już się nie zbuduje: buildsystem zapewnia nam, żeby każdy budował używając tej samej wersji gcc, bibliotek, bibliotek firmowych i innych narzędzi

axelbest napisał(a):

Czy mysleliscie nad przejściem na gita?

Korpo. Nie da się ruszyć machiny, a jeśli się da, to "przecież działa z svnem, po co przechodzić"

axelbest napisał(a):

Skoro projekt jest tak duży to czy często macie konflikty (svn bardzo się przyczynia do tego)?

Czasami, ale to nie jest problem

0

Total Commander

1

Konflikty nie są spowodowane narzędziem tylko workflow jaki macie.
Może nie jest ostatnio aktualizaowane http://jfilesync.sourceforge.net/ ale działa.

0

Wiem, że odbiegam od tematu - ale czy zastanawialiście się kiedyś że odpalać ten wasz projekt na wirtualnej maszynie? Jakiś vagrant czy cokolwiek? Konfigurację vagranta oraz cały projekt byście mieli na gicie, potem tylko instalka vagranta, odpalenie maszyny i jazda. Ja mam tak w pracy - kilkunastu programistów ma taką samą konfigurację maszyny wirtualnej. W razie potrzeby - puszczany jest update do repo zawierające zmianę konfiguracji i tyle. Na waszym miejscu szedłbym w automatyzację tego procesu. Czy jeśli któryś z developerów straci internet (albo cała firma) to praca stoi?

2

Rsync i/lub duplicati.

0

unison

1
axelbest napisał(a):

Czy jeśli któryś z developerów straci internet (albo cała firma) to praca stoi?

Ja bym zapytał co się dzieje, jak to serwer padnie :) Zostają wszyscy ze swoimi lokalnymi kopiami bez buildsystemu?
A jak ktoś chce pracować na danym pliku, który może zostać modyfikowany przez kogoś? Krzyczą "zaklepane"? ;)

VCS i nie ma innej opcji. A jak chcą coś do buildów, to mogą sobie Jenkinsa postawić.

1 użytkowników online, w tym zalogowanych: 0, gości: 1