SlideShare a Scribd company logo
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 2008
Blog ITA: http://blogs.dotnethell.it/suxstellino
Blog ENG: http://suxstellino.wordpress.com/
Website: http://www.alessandroalpi.net
CTO Engage IT Services S.r.l.
www.engageitservices.it
Team leader (SCRUM)
Communities
Getlatestversion.it
Cos’è
Repository per
Gestore dei cosiddetti changes (revisioni dei nostri file)
Storage sicuro
Gestire il lavoro (anche e soprattutto) in team
Sinonimo di Version Control
Parte di un Software Configuration Management
Cosa non è? Uno storage per tutto
1/7
DB 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)
Revisioni
Collaborazione e condivisione
Restore delle versioni e backup
Per cosa non si usa? I film scaricati 
2/7
DB SC
Ok, e su database?
Condivisione del database nel team
Sincronizzazione dei database
Invio dei changeset a database
Revisioni 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/7
DB SC
Com’è fatto
Repository
Modalità centralizzata (uno solo «a server»)
Modalità distribuito (più copie del repository)
API
Comandi per copiare il repository (distribuito)
Comandi per scaricare il repository
Comandi per inviare i changeset
Modalità
Condivisa (centralizzata, un solo database)
Dedicata (distribuita, più database)
E le branch? Sessione di Igor! 
4/7
DB SC
Dedicata Condivisa
Cosa c’è dietro le quinte
Working base folder
Copia locale del database scaricato
Copia locale dei cambiamenti
Transient folder
Ultima versione effettiva su source control
Comparazione
La Working base è sincronizzata con le revisioni
La Working base viene comparata con la transient per generare le diff
SSMS come vede i cambiamenti? Polling di una dll 
5/7
DB SC
La linea del tempo.. 5/7
DB SC
Sql Server Management
Studio IDE
Working folder
File “.sql”
Development
Team Explorer to
Source Control
Code, History and
Changesets
Save Send
GetApply
Repository
Ci sono strumenti..
IDE di gestione
RedGate 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/7
DB SC
DEMO 1 – RedGate SoC v5 con VSTS (link + get)
Modalità dedicata + working folder
Utilizzo di VS Team Explorer
Link + get del database
DEMO 2 – RedGate SoC v5 con VSTS (new/edit items)
Modifica oggetti
Aggiunta dati
DEMO 3 – RedGate SoC v5 con VSTS (remove items)
Rimozione oggetti
Rimozione dati
DEMO 4 – RedGate SoC v5 con VSTS (filtri e options)
Filtri
Comparison options
DEMO 5 – RedGate SoC v5 con VSTS (migrations)
Migrations e refactor iniettati
se ci stanno, altrimenti due chiacchiere
Grazie
•Domande?

More Related Content

Viewers also liked

[ITA] SQL Saturday 264 - Put databases in ALM backgrounds
[ITA] SQL Saturday 264 - Put databases in ALM backgrounds[ITA] SQL Saturday 264 - Put databases in ALM backgrounds
[ITA] SQL Saturday 264 - Put databases in ALM backgrounds
Alessandro Alpi
 
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
Alessandro Alpi
 
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
Alessandro Alpi
 
DotNetCampus - Continuous Integration con Sql Server
DotNetCampus - Continuous Integration con Sql ServerDotNetCampus - Continuous Integration con Sql Server
DotNetCampus - Continuous Integration con Sql Server
Alessandro Alpi
 
[ENG] Sql Saturday 355 in Parma - New "SQL Server databases under source cont...
[ENG] Sql Saturday 355 in Parma - New "SQL Server databases under source cont...[ENG] Sql Saturday 355 in Parma - New "SQL Server databases under source cont...
[ENG] Sql Saturday 355 in Parma - New "SQL Server databases under source cont...
Alessandro Alpi
 
Oraciones simples con solucionario (ppt)
Oraciones simples con solucionario (ppt)Oraciones simples con solucionario (ppt)
Oraciones simples con solucionario (ppt)CastilloAguilera
 
Cwit interview
Cwit interviewCwit interview
Cwit interviewakhtarsaad
 
Lista 2 - geografia
Lista 2 - geografiaLista 2 - geografia
Lista 2 - geografia
Gerson Coppes
 
2 67-1379416025-9. automation nad virtual.full
2 67-1379416025-9. automation nad virtual.full2 67-1379416025-9. automation nad virtual.full
2 67-1379416025-9. automation nad virtual.fullKier Francisco
 
PASS Virtual Chapter - SQL Server Continuous Deployment
PASS Virtual Chapter - SQL Server Continuous DeploymentPASS Virtual Chapter - SQL Server Continuous Deployment
PASS Virtual Chapter - SQL Server Continuous Deployment
Alessandro Alpi
 
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
Alessandro Alpi
 
#DOAW16 - DevOps@work Roma 2016 - Databases under source control
#DOAW16 - DevOps@work Roma 2016 - Databases under source control#DOAW16 - DevOps@work Roma 2016 - Databases under source control
#DOAW16 - DevOps@work Roma 2016 - Databases under source control
Alessandro Alpi
 
PASS Virtual Chapter - SQL Server Continuous Integration
PASS Virtual Chapter - SQL Server Continuous IntegrationPASS Virtual Chapter - SQL Server Continuous Integration
PASS Virtual Chapter - SQL Server Continuous Integration
Alessandro Alpi
 
Educational managment task_2
Educational managment task_2Educational managment task_2
Educational managment task_2alexandersaa2013
 
Lista 5
Lista 5Lista 5
Lista 5
Gerson Coppes
 

Viewers also liked (17)

[ITA] SQL Saturday 264 - Put databases in ALM backgrounds
[ITA] SQL Saturday 264 - Put databases in ALM backgrounds[ITA] SQL Saturday 264 - Put databases in ALM backgrounds
[ITA] SQL Saturday 264 - Put databases in ALM backgrounds
 
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
 
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...
 
Slide sharing
Slide sharingSlide sharing
Slide sharing
 
DotNetCampus - Continuous Integration con Sql Server
DotNetCampus - Continuous Integration con Sql ServerDotNetCampus - Continuous Integration con Sql Server
DotNetCampus - Continuous Integration con Sql Server
 
[ENG] Sql Saturday 355 in Parma - New "SQL Server databases under source cont...
[ENG] Sql Saturday 355 in Parma - New "SQL Server databases under source cont...[ENG] Sql Saturday 355 in Parma - New "SQL Server databases under source cont...
[ENG] Sql Saturday 355 in Parma - New "SQL Server databases under source cont...
 
Oraciones simples con solucionario (ppt)
Oraciones simples con solucionario (ppt)Oraciones simples con solucionario (ppt)
Oraciones simples con solucionario (ppt)
 
Cwit interview
Cwit interviewCwit interview
Cwit interview
 
Lista 2 - geografia
Lista 2 - geografiaLista 2 - geografia
Lista 2 - geografia
 
Gordonas sausio
Gordonas sausioGordonas sausio
Gordonas sausio
 
2 67-1379416025-9. automation nad virtual.full
2 67-1379416025-9. automation nad virtual.full2 67-1379416025-9. automation nad virtual.full
2 67-1379416025-9. automation nad virtual.full
 
PASS Virtual Chapter - SQL Server Continuous Deployment
PASS Virtual Chapter - SQL Server Continuous DeploymentPASS Virtual Chapter - SQL Server Continuous Deployment
PASS Virtual Chapter - SQL Server Continuous Deployment
 
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
 
#DOAW16 - DevOps@work Roma 2016 - Databases under source control
#DOAW16 - DevOps@work Roma 2016 - Databases under source control#DOAW16 - DevOps@work Roma 2016 - Databases under source control
#DOAW16 - DevOps@work Roma 2016 - Databases under source control
 
PASS Virtual Chapter - SQL Server Continuous Integration
PASS Virtual Chapter - SQL Server Continuous IntegrationPASS Virtual Chapter - SQL Server Continuous Integration
PASS Virtual Chapter - SQL Server Continuous Integration
 
Educational managment task_2
Educational managment task_2Educational managment task_2
Educational managment task_2
 
Lista 5
Lista 5Lista 5
Lista 5
 

Similar to Quick intro sul Source Control su SQL Server

[ITA] SQL Saturday 257 - Put databases under source control
[ITA] SQL Saturday 257 - Put databases under source control[ITA] SQL Saturday 257 - Put databases under source control
[ITA] SQL Saturday 257 - Put databases under source control
Alessandro Alpi
 
CONTINUOUS INTEGRATION CON SQL SERVER
CONTINUOUS INTEGRATION CON SQL SERVERCONTINUOUS INTEGRATION CON SQL SERVER
CONTINUOUS INTEGRATION CON SQL SERVER
DotNetCampus
 
Database Project in Visual Studio 2010
Database Project in Visual Studio 2010Database Project in Visual Studio 2010
Database Project in Visual Studio 2010
Gian Maria Ricci
 
Confio Ignite - webinar by Matteo Durighetto
Confio Ignite - webinar by Matteo DurighettoConfio Ignite - webinar by Matteo Durighetto
Confio Ignite - webinar by Matteo DurighettoMiriade Spa
 
Installazione del cms alfresco
Installazione del cms alfrescoInstallazione del cms alfresco
Installazione del cms alfresco
Mirco Leo
 
Implementare e mantenere un progetto azure sql database v.2
Implementare e mantenere un progetto azure sql database v.2Implementare e mantenere un progetto azure sql database v.2
Implementare e mantenere un progetto azure sql database v.2Emanuele Zanchettin
 
Struttin' on, novità in casa Struts
Struttin' on, novità in casa StrutsStruttin' on, novità in casa Struts
Struttin' on, novità in casa Struts
Marcello Teodori
 
Ddive Xpage852
Ddive Xpage852Ddive Xpage852
Autumn Event Vicenza
Autumn Event VicenzaAutumn Event Vicenza
Autumn Event Vicenza
Piero Sbressa
 
Oracle 1
Oracle 1Oracle 1
Oracle 1
Sergio Ronchi
 
2014.11.14 Implementare e mantenere un progetto Azure SQL Database
2014.11.14 Implementare e mantenere un progetto Azure SQL Database2014.11.14 Implementare e mantenere un progetto Azure SQL Database
2014.11.14 Implementare e mantenere un progetto Azure SQL Database
Emanuele Zanchettin
 
SPRING - MAVEN - REST API (ITA - Luglio 2017)
SPRING - MAVEN - REST API (ITA - Luglio 2017)SPRING - MAVEN - REST API (ITA - Luglio 2017)
SPRING - MAVEN - REST API (ITA - Luglio 2017)
Valerio Radice
 
Corso Avanzato Alfresco Ecm
Corso Avanzato Alfresco EcmCorso Avanzato Alfresco Ecm
Corso Avanzato Alfresco Ecmedoardo fraioli
 
DDive - 8.5.2 Xpages - L'evoluzione continua
DDive - 8.5.2 Xpages - L'evoluzione continuaDDive - 8.5.2 Xpages - L'evoluzione continua
DDive - 8.5.2 Xpages - L'evoluzione continua
Dominopoint - Italian Lotus User Group
 
Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio Online
Davide Benvegnù
 
2014.11.14 Implementare e mantenere un progetto Azure SQL Database
2014.11.14 Implementare e mantenere un progetto Azure SQL Database2014.11.14 Implementare e mantenere un progetto Azure SQL Database
2014.11.14 Implementare e mantenere un progetto Azure SQL Database
Emanuele Zanchettin
 
Automatizzare il processo di link dei database con redgate source control
Automatizzare il processo di link dei database con redgate source controlAutomatizzare il processo di link dei database con redgate source control
Automatizzare il processo di link dei database con redgate source control
Alessandro Alpi
 
SQL Azure - The Basics
SQL Azure - The BasicsSQL Azure - The Basics
SQL Azure - The Basics
Davide Mauri
 
Cosa c'è di nuovo in asp.net core 2 0
Cosa c'è di nuovo in asp.net core 2 0Cosa c'è di nuovo in asp.net core 2 0
Cosa c'è di nuovo in asp.net core 2 0
Andrea Dottor
 
Silverlight in Action
Silverlight in ActionSilverlight in Action
Silverlight in Action
DotNetMarche
 

Similar to Quick intro sul Source Control su SQL Server (20)

[ITA] SQL Saturday 257 - Put databases under source control
[ITA] SQL Saturday 257 - Put databases under source control[ITA] SQL Saturday 257 - Put databases under source control
[ITA] SQL Saturday 257 - Put databases under source control
 
CONTINUOUS INTEGRATION CON SQL SERVER
CONTINUOUS INTEGRATION CON SQL SERVERCONTINUOUS INTEGRATION CON SQL SERVER
CONTINUOUS INTEGRATION CON SQL SERVER
 
Database Project in Visual Studio 2010
Database Project in Visual Studio 2010Database Project in Visual Studio 2010
Database Project in Visual Studio 2010
 
Confio Ignite - webinar by Matteo Durighetto
Confio Ignite - webinar by Matteo DurighettoConfio Ignite - webinar by Matteo Durighetto
Confio Ignite - webinar by Matteo Durighetto
 
Installazione del cms alfresco
Installazione del cms alfrescoInstallazione del cms alfresco
Installazione del cms alfresco
 
Implementare e mantenere un progetto azure sql database v.2
Implementare e mantenere un progetto azure sql database v.2Implementare e mantenere un progetto azure sql database v.2
Implementare e mantenere un progetto azure sql database v.2
 
Struttin' on, novità in casa Struts
Struttin' on, novità in casa StrutsStruttin' on, novità in casa Struts
Struttin' on, novità in casa Struts
 
Ddive Xpage852
Ddive Xpage852Ddive Xpage852
Ddive Xpage852
 
Autumn Event Vicenza
Autumn Event VicenzaAutumn Event Vicenza
Autumn Event Vicenza
 
Oracle 1
Oracle 1Oracle 1
Oracle 1
 
2014.11.14 Implementare e mantenere un progetto Azure SQL Database
2014.11.14 Implementare e mantenere un progetto Azure SQL Database2014.11.14 Implementare e mantenere un progetto Azure SQL Database
2014.11.14 Implementare e mantenere un progetto Azure SQL Database
 
SPRING - MAVEN - REST API (ITA - Luglio 2017)
SPRING - MAVEN - REST API (ITA - Luglio 2017)SPRING - MAVEN - REST API (ITA - Luglio 2017)
SPRING - MAVEN - REST API (ITA - Luglio 2017)
 
Corso Avanzato Alfresco Ecm
Corso Avanzato Alfresco EcmCorso Avanzato Alfresco Ecm
Corso Avanzato Alfresco Ecm
 
DDive - 8.5.2 Xpages - L'evoluzione continua
DDive - 8.5.2 Xpages - L'evoluzione continuaDDive - 8.5.2 Xpages - L'evoluzione continua
DDive - 8.5.2 Xpages - L'evoluzione continua
 
Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio Online
 
2014.11.14 Implementare e mantenere un progetto Azure SQL Database
2014.11.14 Implementare e mantenere un progetto Azure SQL Database2014.11.14 Implementare e mantenere un progetto Azure SQL Database
2014.11.14 Implementare e mantenere un progetto Azure SQL Database
 
Automatizzare il processo di link dei database con redgate source control
Automatizzare il processo di link dei database con redgate source controlAutomatizzare il processo di link dei database con redgate source control
Automatizzare il processo di link dei database con redgate source control
 
SQL Azure - The Basics
SQL Azure - The BasicsSQL Azure - The Basics
SQL Azure - The Basics
 
Cosa c'è di nuovo in asp.net core 2 0
Cosa c'è di nuovo in asp.net core 2 0Cosa c'è di nuovo in asp.net core 2 0
Cosa c'è di nuovo in asp.net core 2 0
 
Silverlight in Action
Silverlight in ActionSilverlight in Action
Silverlight in Action
 

More from Alessandro Alpi

Mvp4 croatia - Being a dba in a devops world
Mvp4 croatia - Being a dba in a devops worldMvp4 croatia - Being a dba in a devops world
Mvp4 croatia - Being a dba in a devops world
Alessandro Alpi
 
Digital warriors 2020 - Smart?
Digital warriors 2020 - Smart?Digital warriors 2020 - Smart?
Digital warriors 2020 - Smart?
Alessandro Alpi
 
Sql Wars - SQL the attack of the Clones and the rebellion of the Containers
Sql Wars - SQL the attack of the Clones and the rebellion of the Containers Sql Wars - SQL the attack of the Clones and the rebellion of the Containers
Sql Wars - SQL the attack of the Clones and the rebellion of the Containers
Alessandro Alpi
 
Sql Wars - SQL Clone vs Docker Containers
Sql Wars - SQL Clone vs Docker Containers Sql Wars - SQL Clone vs Docker Containers
Sql Wars - SQL Clone vs Docker Containers
Alessandro Alpi
 
Doaw2020 - Dalla produzione alla QA, provisioning su SQL Server
Doaw2020 - Dalla produzione alla QA, provisioning su SQL ServerDoaw2020 - Dalla produzione alla QA, provisioning su SQL Server
Doaw2020 - Dalla produzione alla QA, provisioning su SQL Server
Alessandro Alpi
 
Wpc2019 - Distruggere DevOps, la storia di un vero team
Wpc2019 - Distruggere DevOps, la storia di un vero teamWpc2019 - Distruggere DevOps, la storia di un vero team
Wpc2019 - Distruggere DevOps, la storia di un vero team
Alessandro Alpi
 
Sql start!2019 Migliorare la produttività per lo sviluppo su SQL Server
Sql start!2019 Migliorare la produttività per lo sviluppo su SQL ServerSql start!2019 Migliorare la produttività per lo sviluppo su SQL Server
Sql start!2019 Migliorare la produttività per lo sviluppo su SQL Server
Alessandro Alpi
 
Configuration e change management con Disciplined Agile Framework
Configuration e change management con Disciplined Agile FrameworkConfiguration e change management con Disciplined Agile Framework
Configuration e change management con Disciplined Agile Framework
Alessandro Alpi
 
Basta poco per distruggere DevOps
Basta poco per distruggere DevOpsBasta poco per distruggere DevOps
Basta poco per distruggere DevOps
Alessandro Alpi
 
Sql saturday parma 2017 (#sqlsat675) - Deep space Cosmos DB
Sql saturday parma 2017 (#sqlsat675) - Deep space Cosmos DBSql saturday parma 2017 (#sqlsat675) - Deep space Cosmos DB
Sql saturday parma 2017 (#sqlsat675) - Deep space Cosmos DB
Alessandro Alpi
 
Sql Saturday a Pordenone - Sql Server journey, da dev a ops
Sql Saturday a Pordenone - Sql Server journey, da dev a opsSql Saturday a Pordenone - Sql Server journey, da dev a ops
Sql Saturday a Pordenone - Sql Server journey, da dev a ops
Alessandro Alpi
 
[Eng] Sql Saturday TorinoExpo - Sql Server 2016 JSON support
[Eng] Sql Saturday TorinoExpo - Sql Server 2016 JSON support[Eng] Sql Saturday TorinoExpo - Sql Server 2016 JSON support
[Eng] Sql Saturday TorinoExpo - Sql Server 2016 JSON support
Alessandro Alpi
 

More from Alessandro Alpi (12)

Mvp4 croatia - Being a dba in a devops world
Mvp4 croatia - Being a dba in a devops worldMvp4 croatia - Being a dba in a devops world
Mvp4 croatia - Being a dba in a devops world
 
Digital warriors 2020 - Smart?
Digital warriors 2020 - Smart?Digital warriors 2020 - Smart?
Digital warriors 2020 - Smart?
 
Sql Wars - SQL the attack of the Clones and the rebellion of the Containers
Sql Wars - SQL the attack of the Clones and the rebellion of the Containers Sql Wars - SQL the attack of the Clones and the rebellion of the Containers
Sql Wars - SQL the attack of the Clones and the rebellion of the Containers
 
Sql Wars - SQL Clone vs Docker Containers
Sql Wars - SQL Clone vs Docker Containers Sql Wars - SQL Clone vs Docker Containers
Sql Wars - SQL Clone vs Docker Containers
 
Doaw2020 - Dalla produzione alla QA, provisioning su SQL Server
Doaw2020 - Dalla produzione alla QA, provisioning su SQL ServerDoaw2020 - Dalla produzione alla QA, provisioning su SQL Server
Doaw2020 - Dalla produzione alla QA, provisioning su SQL Server
 
Wpc2019 - Distruggere DevOps, la storia di un vero team
Wpc2019 - Distruggere DevOps, la storia di un vero teamWpc2019 - Distruggere DevOps, la storia di un vero team
Wpc2019 - Distruggere DevOps, la storia di un vero team
 
Sql start!2019 Migliorare la produttività per lo sviluppo su SQL Server
Sql start!2019 Migliorare la produttività per lo sviluppo su SQL ServerSql start!2019 Migliorare la produttività per lo sviluppo su SQL Server
Sql start!2019 Migliorare la produttività per lo sviluppo su SQL Server
 
Configuration e change management con Disciplined Agile Framework
Configuration e change management con Disciplined Agile FrameworkConfiguration e change management con Disciplined Agile Framework
Configuration e change management con Disciplined Agile Framework
 
Basta poco per distruggere DevOps
Basta poco per distruggere DevOpsBasta poco per distruggere DevOps
Basta poco per distruggere DevOps
 
Sql saturday parma 2017 (#sqlsat675) - Deep space Cosmos DB
Sql saturday parma 2017 (#sqlsat675) - Deep space Cosmos DBSql saturday parma 2017 (#sqlsat675) - Deep space Cosmos DB
Sql saturday parma 2017 (#sqlsat675) - Deep space Cosmos DB
 
Sql Saturday a Pordenone - Sql Server journey, da dev a ops
Sql Saturday a Pordenone - Sql Server journey, da dev a opsSql Saturday a Pordenone - Sql Server journey, da dev a ops
Sql Saturday a Pordenone - Sql Server journey, da dev a ops
 
[Eng] Sql Saturday TorinoExpo - Sql Server 2016 JSON support
[Eng] Sql Saturday TorinoExpo - Sql Server 2016 JSON support[Eng] Sql Saturday TorinoExpo - Sql Server 2016 JSON support
[Eng] Sql Saturday TorinoExpo - Sql Server 2016 JSON support
 

Quick intro sul Source Control su SQL Server

  • 1. Database & Source Control 9 giugno 2016 Sponsored by Anche con SQL Server si può
  • 4. Alessandro Alpi Microsoft MVP – SQL Server dal 2008 Blog ITA: http://blogs.dotnethell.it/suxstellino Blog ENG: http://suxstellino.wordpress.com/ Website: http://www.alessandroalpi.net CTO Engage IT Services S.r.l. www.engageitservices.it Team leader (SCRUM) Communities Getlatestversion.it
  • 5. Cos’è Repository per Gestore dei cosiddetti changes (revisioni dei nostri file) Storage sicuro Gestire il lavoro (anche e soprattutto) in team Sinonimo di Version Control Parte di un Software Configuration Management Cosa non è? Uno storage per tutto 1/7 DB SC
  • 6. 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) Revisioni Collaborazione e condivisione Restore delle versioni e backup Per cosa non si usa? I film scaricati  2/7 DB SC
  • 7. Ok, e su database? Condivisione del database nel team Sincronizzazione dei database Invio dei changeset a database Revisioni 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/7 DB SC
  • 8. Com’è fatto Repository Modalità centralizzata (uno solo «a server») Modalità distribuito (più copie del repository) API Comandi per copiare il repository (distribuito) Comandi per scaricare il repository Comandi per inviare i changeset Modalità Condivisa (centralizzata, un solo database) Dedicata (distribuita, più database) E le branch? Sessione di Igor!  4/7 DB SC Dedicata Condivisa
  • 9. Cosa c’è dietro le quinte Working base folder Copia locale del database scaricato Copia locale dei cambiamenti Transient folder Ultima versione effettiva su source control Comparazione La Working base è sincronizzata con le revisioni La Working base viene comparata con la transient per generare le diff SSMS come vede i cambiamenti? Polling di una dll  5/7 DB SC
  • 10. La linea del tempo.. 5/7 DB SC Sql Server Management Studio IDE Working folder File “.sql” Development Team Explorer to Source Control Code, History and Changesets Save Send GetApply Repository
  • 11. Ci sono strumenti.. IDE di gestione RedGate 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/7 DB SC
  • 12. DEMO 1 – RedGate SoC v5 con VSTS (link + get) Modalità dedicata + working folder Utilizzo di VS Team Explorer Link + get del database
  • 13. DEMO 2 – RedGate SoC v5 con VSTS (new/edit items) Modifica oggetti Aggiunta dati
  • 14. DEMO 3 – RedGate SoC v5 con VSTS (remove items) Rimozione oggetti Rimozione dati
  • 15. DEMO 4 – RedGate SoC v5 con VSTS (filtri e options) Filtri Comparison options
  • 16. DEMO 5 – RedGate SoC v5 con VSTS (migrations) Migrations e refactor iniettati se ci stanno, altrimenti due chiacchiere