Zasady pracy z SVN

Drzewo Katalogów

Poniższy opis zawiera jedynie katalogi niezbędne do wspólnej pracy grafików, koderów i programistów django. Katalogi wynikające ze specyfiki django w zasadzie nie są ujęte w poniższym zestawieniu, ich znajomość konieczna jest jedynie dla programisty django.

1   /example.com
2 |-materialy/
3 | |-svg/
4 |-html/
5 | |-static/
6 | | |-gfx/
7 | | |-sprites/
8 | | |-js/
9 | | |-swf
10 | |-index.html
11 |-django/
12 |-example_com/
13 | |-main/
14 | |-templates/
15 | | |-main/
16 | | | |-base.html
17 | | |-flatpages/
18 | | | |-default.html
19 |-static/
  1. example.com - katalog zawierający całość danych dla danego projektu
  2. materialy - wszelkie materiały, jakie będziemy wykorzystywać
  3. materialy/svg - matariały zawierające layouty z inkscape, każdy layout w osobnym katalogu, dbamy o to, żeby ścieżki w plikach svg były względne (czasami trzeba przerabiać ręcznie)
  4. html - pocięty layout
  5. html/static - wszelkie pliki do layoutu (grafika, style)
  6. html/static/gfx - pojedyncze obrazki
  7. html/static/sprites  - css sprites
  8. html/static/js - wszelkie pliki JavaScript
  9. html/static/swf  - pliki flash
  10. html/index.html - html layoutu, ew. kilka plików o nazwach typu index-portfolio.html
  11. django - katalog zawierajacy aplikacje django
  12. django/example_com - projekt (tworzony przez django-admin.py startproject example_com)
  13. django/example_com/main - aplikacja main w projekcie example com (django-admin.py startapp main)
  14. django/templates - szablony
  15. django/templates/main - szablony aplikacji main
  16. django/templates/main/base.html - szablon główny, po którym dziedziczą pozostałe
  17. django/templates/flatpages/ - szablony dla stron statycznych
  18. django/templates/flatpages/default.html - domyślny szablon strony statycznej (zazwyczaj i tak dziedziczy po django/templates/main/base.html)
  19. django/static - wszelki pliki statyczne

Co gdzie wrzucamy? 

W początkowym okresie tworzenia projektu wszystko idzie do materialy, tam jest dowolność, poza tym, że projekty z inkscape mają być każdy w osobnym katalogu razem z mediami (ponieważ zawierają media, należy zwrócić na to uwagę przy zapisywaniu pliku w inkscape)

Gdy już mamy gotowy layout (w postaci obrazka) w materialy, to tworzymy z niego kod html w html, bezpośrednio w tym katalogu mogą istnieć tylko pliki *.html (ze względu na późniejsze łatwiejsze przenoszenie do django). Znaczenie podkatalogów katalogu html jest opisane w powyższej liście (pkt. 5-8)

W czasie pracy nad projektem materiały zmienione ale o nie zmienionej nazwie (więc na pewno nie będą to sprity, chyba, że operujemy na całym spricie) commitujemy po prostu pod bieżącą nazwą z repozytorium. Materiały nowe (nie istniejące jeszcze w django/example_com/static ew. ) wrzucamy do materialy (tak, by osoba kodująca html mogła sama zadecydować gdzie kwalifikuje się dany plik).