Database under source control
-
Upload
klab -
Category
Technology
-
view
350 -
download
0
Transcript of Database under source control
Database & Source Control 9
giugno 2016
Sponsored by
Anche con SQL Server si può
Sponsor
Presenting...
http://www.devopsheroes.net/
Alessandro Alpi
Microsoft MVP – SQL Server dal 2008Blog ITA: http://blogs.dotnethell.it/suxstellinoBlog ENG: http://suxstellino.wordpress.com/Website: http://www.alessandroalpi.net
CTO Engage IT Services S.r.l.www.engageitservices.itTeam leader (SCRUM)
CommunitiesGetlatestversion.it
Cos’è
Repository perGestore dei cosiddetti changes (revisioni dei nostri file)Storage sicuroGestire il lavoro (anche e soprattutto) in team
Sinonimo di Version ControlParte di un Software Configuration Management
Cosa non è? Uno storage per tutto
1/7DB SC
Perché si usa
Elemento base per i processi a pattern «continuous»Continuous Integration (integrazione continua dei cambiamenti in sviluppo)Continuous Delivery (evoluzione della precedente, «finisce» con UAT e un rilascio)Continuous Deployment (sinonimi, delivery ~ deploy, per alcune scuole)
RevisioniCollaborazione e condivisioneRestore delle versioni e backup
Per cosa non si usa? I film scaricati
2/7DB SC
Ok, e su database?
Condivisione del database nel teamSincronizzazione dei databaseInvio dei changeset a databaseRevisioni del codice
Di programmabilitàDi Data Definition Language (schema)Di Data Control Language (security)Di dati statici
I dati utente? Non sono da source control!
3/7DB SC
Com’è fatto
RepositoryModalità centralizzata (uno solo «a server»)Modalità distribuito (più copie del repository)
APIComandi per copiare il repository (distribuito)Comandi per scaricare il repositoryComandi per inviare i changeset
ModalitàCondivisa (centralizzata, un solo database)Dedicata (distribuita, più database)
E le branch? Sessione di Igor!
4/7DB SC
Dedicata Condivisa
Cosa c’è dietro le quinte
Working base folderCopia locale del database scaricato Copia locale dei cambiamenti
Transient folderUltima versione effettiva su source control
ComparazioneLa Working base è sincronizzata con le revisioniLa Working base viene comparata con la transient per generare le diff
SSMS come vede i cambiamenti? Polling di una dll
5/7DB SC
La linea del tempo.. 5/7DB SC
Sql Server Management Studio
IDEWorking folder
File “.sql”
Development
Team Explorer toSource Control
Code, History andChangesets
Save Send
GetApply
Repository
LINK
Ci sono strumenti..
IDE di gestioneRedGate SQL Source Control (attualmente v5 in RC)ApexSQL Source Control
Integrati a Sql Server Management Studio
Sono IDE che usano API per accedere a SC
7/7DB SC
DEMO 1 – RedGate SoC v5 con VSTS (link + get)
Modalità dedicata + working folderUtilizzo di VS Team Explorer
Link + get del database
DEMO 2 – RedGate SoC v5 con VSTS (new/edit items)
Modifica oggettiAggiunta dati
DEMO 3 – RedGate SoC v5 con VSTS (remove items)
Rimozione oggettiRimozione dati
DEMO 4 – RedGate SoC v5 con VSTS (filtri e options)
FiltriComparison options
DEMO 5 – RedGate SoC v5 con VSTS (migrations)
Migrations e refactor iniettatise ci stanno, altrimenti due chiacchiere
Grazie
•Domande?