Sunteți pe pagina 1din 22

Team Foundation

Services 2012
Version Control
Team foundation server
TFS-O variantă consolidată a familiei
de servere pentru managemt de
proiect

Developer Database
Designer
Specialist

Architect
Tester

Business Project
Analyst Manager
TFS în REZUMAT

Team Foundation Server


ORIENTAT PE PROCES
CONTROLUL VERSIUNILOR
Şabloane de
Procese Work Item
Check-in
SharePoint Integrat Automatizare Build
Organizarea
Personalizabil Politici Check- lucrului, Raportare
in Shelving Cerinţe, Integrare
„Stories”, Risc, Continua Suport de
etc. Programare Decizie
Foarte scalabil Ad Hoc Monitorizare
Progresului în
Proiect
ArchitecturA
Version Control Build
Interfata Client Proxy Environment
Visual
MS Excel Linie de comanda Version
Studio
Control Build
Proxy Process
Service
MS Project Team Explorer SDK-ul TFS

Nivelul Aplicatiilor
SQL Reporting Services Windows SharePoint Services Servicii Web

Nivelul dedicat Datelor

SQL Server

Version Data
Work Items Team Build
Control Warehouse
Instalare TFS
Utilizator (business) Echipa de Dezv (Local)
Echipa de Dezv. (Dist.)

Server de Build

Win 2003 Server


SQL Server 2005
IIS 6.0

Controlul
Active Directory Versiunilor
Proxy (Dist.)
HTTP / S
TCP/IP

TFS
Version Control furnizeaza:
• Stocarea codului sursa, imagini, scripturi de build
necesare dezvoltarii proiectului software
• Monitorizarea istoricului modificarilor effectuate
fisierelor si urmarirea starii fisierelor in diferite faze
ale ciclului de viata al produsului software
• Mecanisme de lucru in paralel in cadrul echipei de
dezvoltatori ai aceluiasi proiect.
Repository
• Repository este reprezentat ca un arbore de fisiere
• Sisteme distribuite de versionare a fisierelor(DVFS)
cum ar fi Git sau Mercurial.
• Delta-ficarea in TFS
• Maparea folderelor de lucru-legatura dintre locul
din repository unde fisierele sunt stocate si locul in
zona sistemului de fisiere local(workspace mapping
sausandbox)
Concepte De bază
controlul versiunii
• Changesets
• Check-in Integrat
• Politici de Check-in
• Workspace-uri
• Shelving
Changesets-toate modificarile pe care
dorim sa le efectuam asupra codului
• Familie de informatii relative la check-in(ok, pentru
modificari salv. In repository pt. a fi disp. echipei)
• Informatii legate de fisiere si branch-uri
• Legatura la workitem-uri
• Note asupra Check-in(modif. efectuate se scriu in repository
pentru a fi disponibilizate echipei)
• Comentarii
• Metadata (data, ora, user)
• Checkin Atomic
• Identificat unic
• Identificat numeric
• Incremental
• Reprezinta un punct in timpul stocarii sursei.
Check-in Integrat
Atomic
• changeset asigura faptul ca toate modificarile unui check-in au fost effectuate.

Integrat
• Aplicare politici de Check-in (dar cu posibilitate de decuplare)
• Work Item-uri asociate
• Build-uri asociate cu Work Item-uri
• Note in Check-in
• Toate relative la changeset
• Posibilitati de notificare

Politici de Check-in
• Customizabile, extensibile
Politici pentru Check-in
• Cerinte pentru Check-in
• Overridable
• Extensible
Workspace-uri

Map-are Server la / User,


Local /Workstation

Modificari in
Workspace create Utilizate si pentru
in“Pending Builds
Changes”
Shelving
• Anularea modificarilor in Scenarii
derulare fara check-in
– Optional revenirea la fisierele
nemodificate Switch Tasks
– Reincarca modificarile prin
operatiuni de “unshelving” Backup
Work-In-Progress
– Optiunea unshelve pentru
modificarile altor user-
Checkpoint
• branching task-urilor cu Work-In-Progress

exceptia radacinii Dezvoltator Share


arborelui. Work-In-Progress

Perform a Code Review


Alte concept in Controlul Versiunilor
• Etichetare
• Compare/Diff
• Annotation
• Branching si Merging
Etichetare
• “Bookmarks” artefacte pentru controlul versiunilor:
• Mai multi utilizatori
• Marcheaza Build-urile, Release-urile
• Item-urile de group
• Etichetare bazata pe Branch sau Merge
Compare/Diff/Merge

Fisiere Arbori
Compare/Diff (instante sau (structura de Branche-uri
diferente) directoare)

Custom Diff /workstation /tip fisier

Intra-fisier
Annotate comparative
istorica
Branching & Merging
Branch
• O relatie branch este creata in TFS pentru a evita duplicarea
istoricului si a metadatelor
• Path-space branching: Vedeti directorul branch-ului in
Source Control Explorer
• Copii Inteligente
Merge
• Sincronizeaza un branch cu un altul
• Abilitatea de a afisa modificarile care nu au fost supuse unui
process de tip merged
Dezvoltarea Paralela
Mituri TFS
Team Project = VS Project
• Team Projects poate realiza managementul unui
portofoliu de proiecte…

TFS este numai pentru .NET


• NU. Vezi Eclipse

Este nevoie de Visual Studio


• Lots of plug-ins, interfata web CLI, etc..
Integrarea cu alte
component tfs
Controlul Versiunilor TFS
Integrarea cu alte component tfs
• Crearea unui scenario de
build
Build
• Raportul de build arata
changeset asociatuild

• Asociere usoara a
Monitorizare codului cu cu work
Work Item item-uri
• Trasabilitate
Controlul
Versiunilor • Influenteaza
Ghidarea structura
Proceselor &
Automatizare controlului
versiunilor

Portal & • Impactul, progresul,


Raportare etc

S-ar putea să vă placă și