Vytvorenie nového modulu: Rozdiel medzi revíziami
(→Solution) |
|||
(5 medziľahlých úprav od rovnakého používateľa nie je zobrazených.) | |||
Riadok 3: | Riadok 3: | ||
==Solution== | ==Solution== | ||
Príklad novej agendy s kódom REZ - Réžie | Príklad novej agendy s kódom REZ - Réžie | ||
− | # vytvoríme si na lokálnom disku v trunku adresár s kódom agendy v našom prípade REZ | + | # vytvoríme si na lokálnom disku v trunku adresár s kódom agendy v našom prípade <code>REZ</code> |
# nasledujúci krok je založiť projekt vo VS. Sú dve možnosti buď na zelenej lúke alebo kópiou a úpravami z nejakého existujúceho projektu. My si zvolíme kópiu z existujúceho projektu REP, lebo zatiaľ obsahuje iba jedno okno. | # nasledujúci krok je založiť projekt vo VS. Sú dve možnosti buď na zelenej lúke alebo kópiou a úpravami z nejakého existujúceho projektu. My si zvolíme kópiu z existujúceho projektu REP, lebo zatiaľ obsahuje iba jedno okno. | ||
− | # Vyexportujeme cez "SVN Export" celý modul REP (https://svnsrv01.asol.local/svn/spin_net/trunk/source/REP) do adresára REZ | + | # Vyexportujeme cez "SVN Export" celý modul REP (<code>https://svnsrv01.asol.local/svn/spin_net/trunk/source/REP</code>) do adresára <code>REZ</code> |
# Premenujeme vo vrchnom adresári všetky súbory obsahujúce v názve Rep na Rez (*.sln, *.vsmdi, ...) | # Premenujeme vo vrchnom adresári všetky súbory obsahujúce v názve Rep na Rez (*.sln, *.vsmdi, ...) | ||
− | # Premenujeme v adresári src všetky projektové súbory (*.csproj) obsahujúce v názve Rep na Rez | + | # Premenujeme v adresári <code>src</code> všetky projektové súbory (*.csproj) obsahujúce v názve Rep na Rez |
# Pomocou utility ReplAll nahradíme všetky výskyty reťazca "Spin.Rep" za "Spin.Rez" vo všetkých súboroch | # Pomocou utility ReplAll nahradíme všetky výskyty reťazca "Spin.Rep" za "Spin.Rez" vo všetkých súboroch | ||
# Pomocou utility ReplAll nahradíme všetky výskyty reťazca AssemblyTitle("REP") za AssemblyTitle("REZ") | # Pomocou utility ReplAll nahradíme všetky výskyty reťazca AssemblyTitle("REP") za AssemblyTitle("REZ") | ||
# spustime VS a otvoríme solution | # spustime VS a otvoríme solution | ||
− | # nastavíme startup projekt Datalock.Spin.Infrastructure.Shell | + | # nastavíme startup projekt <code>Datalock.Spin.Infrastructure.Shell</code> |
− | # vymažeme nepotrebné triedy a premenujeme si adresáre Rep na Rez v BL a UI. | + | # vymažeme nepotrebné triedy a premenujeme si adresáre obsahujúce <code>Rep</code> na <code>Rez</code> v <code>BL</code> a <code>UI</code>. |
# vymažeme nepotrebné settings z UI a BL projektov | # vymažeme nepotrebné settings z UI a BL projektov | ||
− | # premenujeme súbory (aj triedy) v projektoch Test, Module, UI, BL obsahujúce Rep na Rez | + | # premenujeme súbory (aj triedy) v projektoch <code>Test</code>, <code>Module</code>, <code>UI</code>, <code>BL</code> obsahujúce Rep na Rez |
− | # v triede RezModuleController zmeníme agendu AgendaEnum.REP na AgendaEnum.REZ | + | # treba upraviť <code>AssemblyInfo.cs</code> modulu a zmeniť <code>[assembly: Module("Rep")]</code> na <code>[assembly: Module("Rez")]</code> |
− | # upravíme triedy RezActionCommand a RezActionsDefinitions na novú agendu, tak aby sa nám solution dala spustiť. | + | # treba skontrolovať, či <code>AssemblyInfo.cs</code> modulu obsahuje definíciu triedy, ktorá obsahuje definície akcii <code>[assembly: ActionsDefinitions(typeof(RepActionsDefinitions))]</code> |
+ | # treba upraviť <code>AssemblyInfo.cs<code> v <code>Test</code>, <code>Module</code>, <code>UI</code>, <code>BL</code> a pre každú assembly vygenerovať GUID pomocou utility <code>"c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\guidgen.exe"</code> a zapísať do AssemblyInfo.cs | ||
+ | # v triede <code>RezModuleController</code> zmeníme agendu <code>AgendaEnum.REP</code> na <code>AgendaEnum.REZ</code> | ||
+ | # upravíme triedy <code>RezActionCommand</code> a <code>RezActionsDefinitions</code> na novú agendu, tak aby sa nám solution dala spustiť. | ||
# pridanie modulu do SVN | # pridanie modulu do SVN | ||
− | ## vyexportovať si zo starého modulu (v našom príklade REP ) definíciu externalov (pravé tlačítko myši na modulovom adresári REP, zvoliť možnosť Tortoise SVN -> Properties, nastaviť sa na properties externals a stlačiť Export a uložiť do súboru), to isté urobiť nad podadresárom src. | + | ## vyexportovať si zo starého modulu (v našom príklade REP ) definíciu externalov (pravé tlačítko myši na modulovom adresári <code>REP</code>, zvoliť možnosť Tortoise SVN -> Properties, nastaviť sa na properties externals a stlačiť Export a uložiť do súboru), to isté urobiť nad podadresárom <code>src</code>. |
− | ## cez repobrowser založíme na svn serveri do trunk\source nový adresár REZ, ktorému naimportujeme definíciu modulových externalov získanú z predchádzajúceho kroku | + | ## cez repobrowser založíme na svn serveri do <code>trunk\source</code> nový adresár <code>REZ</code>, ktorému naimportujeme definíciu modulových externalov získanú z predchádzajúceho kroku |
− | ## cez repobrowser založíme na svn serveri do trunk\source\REZ nový adresár src, ktorému naimportujeme definíciu externalov získanú z predchádzajúceho kroku pre adresár src | + | ## cez repobrowser založíme na svn serveri do <code>trunk\source\REZ</code> nový adresár <code>src</code>, ktorému naimportujeme definíciu externalov získanú z predchádzajúceho kroku pre adresár <code>src</code> |
− | ## skúsime si niekde na disk vycheckoutovať pre kontrolu modul REZ, mali by sa v ňom povytvárať adresáre aj s obsahom, ktoré sú definované cez externals (v modulovom adresári adresáre tools, dev, libs, build, a v src adresári adresáre SpinInfrastructure, SpinFramework, SpinCommon, SpinShared ) | + | ## skúsime si niekde na disk vycheckoutovať pre kontrolu modul REZ, mali by sa v ňom povytvárať adresáre aj s obsahom, ktoré sú definované cez externals (v modulovom adresári adresáre <code>tools</code>, <code>dev</code>, <code>libs</code>, <code>build</code>, a v <code>src</code> adresári adresáre <code>SpinInfrastructure</code>, <code>SpinFramework</code>, <code>SpinCommon</code>, <code>SpinShared</code> ) |
− | ## v pôvodnom lokálnom adresári kde máme rozchodený modul externé adresáre zmažeme (aj v src podadresári, necháme iba adresár module s podadresármi ) a necháme do tohoto adresára vycheckoutovať z SVN servera prichystaný modul. Týmto sa nám zmazané adresáre opätovne dotiahnu z SVN a zostanú na SVN napojené. | + | ## v pôvodnom lokálnom adresári kde máme rozchodený modul externé adresáre zmažeme (aj v <code>src</code> podadresári, necháme iba adresár <code>module</code> s podadresármi ) a necháme do tohoto adresára vycheckoutovať z SVN servera prichystaný modul. Týmto sa nám zmazané adresáre opätovne dotiahnu z SVN a zostanú na SVN napojené. |
− | ## naštartujeme Visual Studio a cez pravé tlačítko nad solution pomocou voľby "Add selected project to subversion" pridáme súbor sln a zvyšné modulové adresáre Datalock.Spin.Rez.BL, Datalock.Spin.Rez.UI, Datalock.Spin.Rez.Module a Datalock.Spin.Rez.Test do svn a potvrdíme commitom. | + | ## naštartujeme Visual Studio a cez pravé tlačítko nad solution pomocou voľby "Add selected project to subversion" pridáme súbor <code>sln</code> a zvyšné modulové adresáre <code>Datalock.Spin.Rez.BL</code>, <code>Datalock.Spin.Rez.UI</code>, <code>Datalock.Spin.Rez.Module</code> a <code>Datalock.Spin.Rez.Test</code> do svn a potvrdíme commitom. |
− | ## pridáme si ešte nový resource file k modulu do Datalock.Spin.Shared projektu | + | ## pridáme si ešte nový resource file k modulu do <code>Datalock.Spin.Shared</code> projektu |
+ | # kontaktujeme Jenkins master-a, aby nám nastavil automatické nočné buildy | ||
==Projekty== | ==Projekty== |
Aktuálna revízia z 12:27, 15. apríl 2013
Popis jednotlivých krokov pre vytvorenie nového modulu
Solution
Príklad novej agendy s kódom REZ - Réžie
- vytvoríme si na lokálnom disku v trunku adresár s kódom agendy v našom prípade
REZ
- nasledujúci krok je založiť projekt vo VS. Sú dve možnosti buď na zelenej lúke alebo kópiou a úpravami z nejakého existujúceho projektu. My si zvolíme kópiu z existujúceho projektu REP, lebo zatiaľ obsahuje iba jedno okno.
- Vyexportujeme cez "SVN Export" celý modul REP (
https://svnsrv01.asol.local/svn/spin_net/trunk/source/REP
) do adresáraREZ
- Premenujeme vo vrchnom adresári všetky súbory obsahujúce v názve Rep na Rez (*.sln, *.vsmdi, ...)
- Premenujeme v adresári
src
všetky projektové súbory (*.csproj) obsahujúce v názve Rep na Rez - Pomocou utility ReplAll nahradíme všetky výskyty reťazca "Spin.Rep" za "Spin.Rez" vo všetkých súboroch
- Pomocou utility ReplAll nahradíme všetky výskyty reťazca AssemblyTitle("REP") za AssemblyTitle("REZ")
- spustime VS a otvoríme solution
- nastavíme startup projekt
Datalock.Spin.Infrastructure.Shell
- vymažeme nepotrebné triedy a premenujeme si adresáre obsahujúce
Rep
naRez
vBL
aUI
. - vymažeme nepotrebné settings z UI a BL projektov
- premenujeme súbory (aj triedy) v projektoch
Test
,Module
,UI
,BL
obsahujúce Rep na Rez - treba upraviť
AssemblyInfo.cs
modulu a zmeniť[assembly: Module("Rep")]
na[assembly: Module("Rez")]
- treba skontrolovať, či
AssemblyInfo.cs
modulu obsahuje definíciu triedy, ktorá obsahuje definície akcii[assembly: ActionsDefinitions(typeof(RepActionsDefinitions))]
- treba upraviť
AssemblyInfo.cs<code> v <code>Test
,Module
,UI
,BL
a pre každú assembly vygenerovať GUID pomocou utility"c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\guidgen.exe"
a zapísať do AssemblyInfo.cs - v triede
RezModuleController
zmeníme agenduAgendaEnum.REP
naAgendaEnum.REZ
- upravíme triedy
RezActionCommand
aRezActionsDefinitions
na novú agendu, tak aby sa nám solution dala spustiť. - pridanie modulu do SVN
- vyexportovať si zo starého modulu (v našom príklade REP ) definíciu externalov (pravé tlačítko myši na modulovom adresári
REP
, zvoliť možnosť Tortoise SVN -> Properties, nastaviť sa na properties externals a stlačiť Export a uložiť do súboru), to isté urobiť nad podadresáromsrc
. - cez repobrowser založíme na svn serveri do
trunk\source
nový adresárREZ
, ktorému naimportujeme definíciu modulových externalov získanú z predchádzajúceho kroku - cez repobrowser založíme na svn serveri do
trunk\source\REZ
nový adresársrc
, ktorému naimportujeme definíciu externalov získanú z predchádzajúceho kroku pre adresársrc
- skúsime si niekde na disk vycheckoutovať pre kontrolu modul REZ, mali by sa v ňom povytvárať adresáre aj s obsahom, ktoré sú definované cez externals (v modulovom adresári adresáre
tools
,dev
,libs
,build
, a vsrc
adresári adresáreSpinInfrastructure
,SpinFramework
,SpinCommon
,SpinShared
) - v pôvodnom lokálnom adresári kde máme rozchodený modul externé adresáre zmažeme (aj v
src
podadresári, necháme iba adresármodule
s podadresármi ) a necháme do tohoto adresára vycheckoutovať z SVN servera prichystaný modul. Týmto sa nám zmazané adresáre opätovne dotiahnu z SVN a zostanú na SVN napojené. - naštartujeme Visual Studio a cez pravé tlačítko nad solution pomocou voľby "Add selected project to subversion" pridáme súbor
sln
a zvyšné modulové adresáreDatalock.Spin.Rez.BL
,Datalock.Spin.Rez.UI
,Datalock.Spin.Rez.Module
aDatalock.Spin.Rez.Test
do svn a potvrdíme commitom. - pridáme si ešte nový resource file k modulu do
Datalock.Spin.Shared
projektu
- vyexportovať si zo starého modulu (v našom príklade REP ) definíciu externalov (pravé tlačítko myši na modulovom adresári
- kontaktujeme Jenkins master-a, aby nám nastavil automatické nočné buildy
Projekty
Podpísanie assembly
Všetky knižnice Spin2 sú podpísané privátnym kľúčom, ktorý je v adresari dev