Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Wspólna praca na jednym pliku przez neta


Rekomendowane odpowiedzi

Opublikowano

Bry,

ostatnio wziałem się za program do wspólnego kodzenia przez neta.

Właściwie mam wszystko ale napotkałem błąd: kod u wszystkich jest zastępowany kodem osoby która pierwsza się połączyła.

Pomyslalem ze potrzebna mi jest funkcja analizująca dwa kody(od serwera czyli innego piszacego ,oraz nasz ktory w tym czasie napisalismy) i wprowadzająca poprawki ktore nadeszly z serwera...

Czy moglby ktoś pomóc przedstawiając jakąś ideę? Albo pseudokod? Cholernie zależy mi na tym programie , tylko ten jeden problem do ominiecia ... :)

Opublikowano

Załóżcie sobie SVN, w kliencie np. TortoiseSVN masz coś takiego jak konflikty.

Trzymaj się zasad:

1. Nie testuj nic na kodzie z SVN, wrzucaj tam tylko gotowe, działające rzeczy

2. Nie pracujcie nad tą samą rzeczą (chyba że jest silna potrzeba tego), rozbijcie sprawe na kilka elementów i niech każdy pracuje nad innym

3. Przed każdym commitem (wrzuceniem aktualizacji na SVN) robisz aktualizacje repozytorium.

 

Jeśli napotkasz się na konflikt (twoja wersja pliku będzie inna niż ta z SVN) to na skolidowany plik ppm->TortoiseSVN->Edit conflicts

Będziesz tam widział różnice między twoją wersją pliku a tą na SVN. Aby pozbyć się konfliktu trzeba przejrzeć linijki które kolidują i wybierać co ma trafić do wersji wyjściowej - nasza wersja czy ta z repozytorium.

Chcesz zarobić na własnym cheacie/bocie? Pisz na PM

Cracking, analiza programu/strony, boty (także web), cheaty

kwoh2cmd.png

Opublikowano

Wielkie dziękuję PsychoBoy :)

Dokładnie czegoś takiego szukałem gdyby nie jedno ale: jestem cholernie ambitny i sam chcę napisać taki system kontroli wersji :P

Problem polega na tym ,że nie mogę zrobić porównywania plików tekstowych i sądzę, że polega na logicznej komunikacji z serwerem.

 

 

 

Wyobrażając sobie przebieg sytuacji, mamy dwa klienty [K1 i K2] , oraz serwer .

zapytanie o kod do klient1

[K1] odpowiedz pozytywna, wysylam kod na serwer

otrzymany kod wysyłam do klient2

...tu w kliencie2 powinien sprawdzic wprowadzone zmiany w kodzie przez klient1 i wprowadzić je

zapytanie o kod do klient2

[K2]odpowiedz pozytywna , wysylam kod

wysylam kod do K1

..i tak w koło

 

Czy tak właśnie winno to działać? Chodzi mi o sam to rozumowania ,bo jesli uznacie ze jest dobry to została jednak ta funkcja ...tylko znowu pojawia się pytanie skąd ma wiedzieć co jest 'zmianą' i gdzie tą zmianę wstawić w kodzie.

 

 

EDIT: a moze nie automatyzować tak tego ? To znaczy niech serwer nie prosi o kod na biezaco go aktualizując u wszystkich tylko niech na prosbe 'kodzący' wysylaja wersje?

Opublikowano

Jeśli jako zautomatyzowanie widzisz coś takiego, że klienci piszą kod i on na bieżąco zostaje wrzucany na serwer to by było zbyt problematyczne.

Chodzi o to, że programista zawsze przed wysłaniem testuje kod, zmienia go itd. więc taki nieprzetestowany kod trafi do innych bo zostanie automatycznie wysłany.

 

Jak już masz naprawdę taką ambicje o.O to zrób system wysyłania/pobierania na żądanie czyli jak w SVN.

Do tego jeśli chcesz zrób automatyczną kontrole wersji, to jest:

[K1] wysyła kod na serwer

powiadom wszystkich klientów z wyjątkiem K1 o nowej wersji (K1 wie że wysłał swoją wersje)

[K2] otrzymuje komunikat o nowej wersji kodu

Chcesz zarobić na własnym cheacie/bocie? Pisz na PM

Cracking, analiza programu/strony, boty (także web), cheaty

kwoh2cmd.png

Opublikowano

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...