Edycja

Z UMP

draft!!


Źródła map trzymane są w wielu różnych plikach, aby było nimi łatwiej zarządzać, a także by można pracować na mniejszych fragmentach danych, "odfiltrowując sobie te, które chwilowo nie są potrzebne. Z tego względu zanim rozpoczniesz edycję wybranego fragmentu mapy z jej jednego lub kilku interesujących obszarów, konieczne jest użycie odpowiednich narzędzi, które posklejają odpowiednie pliki źródłowe w całość nadającą się do edycji, a po jej zakończeniu - rozłożą poprawioną mapę z powrotem na poszczególne pliki źródłowe i dostarczą raport o tym, co się zmieniło, aby można było zmienione pliki wysłać do repozytorium CVS.

Najbardziej podstawowym programem do montowania/demontowania map jest program mont-demont-multi2.pl lub jego uboższa awk-owa wersja. Programów tych nie musisz jednak wołać "ręcznie" - w systemie Windows służą do tego odpowiednie skrypty w plikach .bat, natomiast w uniksach - odpowiednie opcje dla programu make zapisane w pliku Makefile.common ("make help" pokaże wszystkie dostępne). We wszystkich systemach (unix & windows) dostępny jest także perlowy skrypt mdm-gui.pl będący okienkowym interfejsem do montowania/demontażu źródeł.

Spis treści

Jak dodać lub usunąć plik?

Jak dodać: stwórz pusty plik (o nazwie zgodnej z konwencją), wydaj polecenia cvs add nazwapliku; cvs commit. Wrzucaj zawartość, commituj.

Jak usunąć: skasuj plik z dysku, wydaj polecenia cvs remove nazwapliku; cvs commit. Użytkownik nie może kasować katalogów.

Perl

Po pierwsze musisz sobie zainstalować perla (Perl w UMP) A potem wystarczy zamiast mont-demont.bat używać mont-demont.perl.bat

Edycja kilku obszarów naraz

  • skrypt mdm-gui.pl (dostępny w cvs/narzedzia)

Grafika:mdm.png

sposób pracy:

  • uruchom (wymagany perl)
  • zaznacz wybrane obszary
  • kliknij na Montuj, edytuj, Demontuj

ALBO

Grafika:Jamond.png

sposób pracy:

  • uruchom (wymagana java)
  • sprawdź ew. popraw ustawienia (menu narzędzia)
  • zaznacz obszary, które chcesz edytować: menu regiony (jeśli nie ma żadnego, to poplątałeś ścieżki w ustawieniach)
  • edytuj: guzik mapedit
  • ...

ALBO

  • W systemie UNIX - ustaw zmienną "DIR" tak, aby zawierała nazwy kilku regionów, na przykład:
 export DIR="UMP-JeleniaGora UMP-GorzowWlkp UMP-Szczecin"

a następnie dokonuj montowania/demontowania tak jak normalnie ("make mont", edycja, "make demont", "make commit"). Możesz też użyć mdm-gui.pl opisanego powyżej.

Sprawdzanie co i gdzie autor diffów namotał

czyli jak obejrzeć, co w tych diffach zostało podesłane.

Kroki poniżej automagicznie załatwia paczuj.bat pod system win32, jednak przeglądanie diffów zostaje.

Najpierw diffy po prostu przejrzyj, żeby wyłapać grube błędy albo takie niewidoczne pod Mapedit (np. zdublowanie komentarzy, albo edycja z włączonym Snap to grid).

  • Windows
  1. zmontuj plik Rejon-wynik.mp ("mont-demont /mont" albo po prostu dwuklik w mont-demont i zamknij bez zmieniania)
  2. dwuklik w cvs_diff.bat
    1. to zrobi wyciąg w plikach new.plt, old.plt oraz chg.plt, oraz podepnie je pod wynik
  3. otwórz edycję Rejon-wynik.mp w Mapedit
  4. szukaj wzrokiem kolorowych wyróżników
    1. niebieskie - zmienione, czerwone - skasowane, zielone - dodane
  5. oglądaj i analizuj, pomagając sobie klawiszem E (ukrywa i pokazuje załączniki, w tym wypadku pogrubienia zmienianych miejsc)
  6. rozmontuj, i jeśli robiłeś poprawki, to zrób to co zwykle.

Sprawdzanie ogólnej kondycji regionu

Służy do tego skrypt "sprawdz_bledy.bat" - dwukliknij i czytaj. Pod uniksem, analogiczny make sprawdz. A więcej opisów jest tam.

Jak już dostaniesz hasło do cvs

Najpierw skasuj całe repozytorium czyli pliki pobrane przez cvs. Tak, całe. Zaloguj się do cvs i ściągnij od nowa. Przydatne polecenia:

cvs login
cvs co all (co=checkout)
cvs com (com=commit)
cvs logout
  • Jak często robić update

Zawsze na początku pracy i tuż przed commitem (no, jeszcze wypada zmontować i rozmontować mapę pomiędzy update i commitem oraz sprawdzić, czy nie zostały jakieś błędy). Przy dłuższej pracy także podczas przerw, ale TYLKO WTEDY, gdy rozmontowałeś wcześniej źródła. Jeśli zrobisz cvs update w trakcie edycji, zapiszesz swoje zmiany, a potem rozmontujesz źródła, to nadpiszesz poprawki wprowadzone przez update, a więc skasujesz czyjąś pracę.

  • Jak często robić commit

Po zakończeniu pracy stanowiącej jakąś całość. Najlepiej dzielić pracę na względnie małe kawałki, commit trwa tylko chwilę, a od razu pokazuje innym naszą pracę i zapobiega w ten sposób zderzeniom.

  • W pliku pojawiły się jakieś linijki z "<<<<<" "=====" i ">>>>>"

Jednocześnie z kimś edytowałeś te same linijki pliku. Ty zrobiłeś update, cvs ściągnął drugą wersję tej samej linijki, i nie wie która jest lepsza. Między wspomnianymi linijkami widzisz swoją i czyjaś pracę. Sam wybierz która wersja jest lepsza.

Jeśli obszar między "<<<<<" a ">>>>>" występuje na samym końcu pliku, to bardzo możliwe, że niezależnie od siebie dodaliście coś na końcu, tworząc nowe obiekty (jeśli to jest jedyny obszar konfliktowy, to jest na to bardzo duża szansa). W takim wypadku prawdopodobnie należy zostawić wszystkie, zarówno te twoje, jak i cudze. Ale nie zawsze! - jeśli jakiś obiekt zostanie podzielony na części, to te części trafiają na koniec pliku, a oryginalny obiekt jest kasowany. Porównaj więc dokładnie obie wersje i wtedy dopiero zdecyduj.

  • hinty

Sprawdzenie kto ostatnio działał

cvs history -cap UMP-Siedlce

Kto co dłubał w pliku

cvs log plik | more

Co się zmieniło w pliku w ciągu ostatnich dwóch godzin

cvs diff -D "-2 hours" plik

Co sie zmieniło w pliku od ostatniego release, cofnij poprawki zrobione miesiąc temu

cvs diff -r release [-r release-poprzedni] plik > zmiany
patch plik zmiany

Jak przywrócić plik do stanu z wczoraj? uwaga: Nie można cofnąć ostatniego (omyłkowego) commita.

cvs update -p -r 1.wersjaOK PLIK.zepsuty.txt > akuku.txt

A oto jak cofnąć ostatni omyłkowy commit (na dobrą sprawę można cofnąć do każdej poprzedniej wersji)

cvs up -j 1.wersjaaktualna -j 1.wersjapoprawna PLIK.zepsuty.txt

Po powyższym poleceniu mamy plik w wersji 1.wersjapoprawna, który po commit możemy ponownie przesłać do repozytorium.

Denerwuje mnie w windows ten wyskakujący notatnik (albo inny edytor w uniksie)

cvs commit -m "Dodalem troche uliczek na Ochocie"

Czym się można podpierać?

Zgłoszenie jest niejasne. Trak chaotyczny. Miejsce skomplikowane. Nie pamiętam jak tam dokładnie wyglądało. Kurcze, jak skołować więcej informacji?

Pamiętaj, że zdjęcia satelitarne mają przynajmniej pół roku, często dużo więcej, a my chcemy mieć mapę aktualną. Nie podpieramy się obcymi mapami w kwestii routingu czy nawet przebiegu ulic. Drogowcy są szybsi, niż te produkty.

Inne mapy

Źródeł danych geograficznych jest niedużo, map na ich bazie więcej. Krótkie zestawienie kto z jakich danych korzysta: