git, youtrack and teamcity - dddsydney 2011

45
Git, TeamCity and YouTRACK A demo of the basic features of integrating alternative options

Upload: thinkddd

Post on 08-Dec-2014

11.286 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Git, YouTrack and TeamCity - DDDSydney 2011

Git, TeamCity and YouTRACK

A demo of the basic features of integrating alternative options

Page 2: Git, YouTrack and TeamCity - DDDSydney 2011

DVCS …

Distributed Version Control System

Page 3: Git, YouTrack and TeamCity - DDDSydney 2011

DVCS …

no central repository, there may be many

Page 4: Git, YouTrack and TeamCity - DDDSydney 2011

DVCS …

every machine is a master, there is no canonical ‘truth’

Page 5: Git, YouTrack and TeamCity - DDDSydney 2011

DVCS …

every machine stores all information about the repository

Page 6: Git, YouTrack and TeamCity - DDDSydney 2011

DVCS …

resilient, no single point of failure

Page 7: Git, YouTrack and TeamCity - DDDSydney 2011

DVCS …

no network connection is required to work productively

Page 8: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

fast, most operations have zero cost

Page 9: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

small

Page 10: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

operates on snapshots, not on file deltas

Page 11: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

cheap local branching

Page 12: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

your full history at your fingertips

Page 13: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

reliable, all operations are SHA-1 hashed

Page 14: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

merges automatically as the norm, merge failures are exceptional

Page 15: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

tracks file renames and moves reliably, with full history

Page 16: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

easy to learn

Page 17: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

command line based, but numerous visual tools to make some operations easier

Page 18: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

only 20 commands

add, bisect, branch, checkout, clone, commit, diff, fetch, grep, init, log, merge, mv, pull, push, rebase, reset, rm, show, status

Page 19: Git, YouTrack and TeamCity - DDDSydney 2011

Git …

commonly needs no more than 11 of them on a regular basis

add, branch, checkout, commit, diff, log, merge, pull, push, reset, status

Page 20: Git, YouTrack and TeamCity - DDDSydney 2011

Git … simple workflow

git checkout –b myfeature // creates and switches to new branch

<do some work>git add . // moves all changes to staging

git commit –am “did some work on myfeature” // commit to repository

git checkout master // switch back to master

git merge myfeature // merge your feature

git push origin master // push to central repo for CI

Page 21: Git, YouTrack and TeamCity - DDDSydney 2011

Git …flexible workflow

http://bit.ly/9bUvdC

Page 22: Git, YouTrack and TeamCity - DDDSydney 2011

Git virtuous cycle …

git pull origin mastergit checkout –b 1002-myfeature <do some work>git add .git commit –am “did some work”git checkout mastergit merge 1002-myfeaturegit push origin master

Page 23: Git, YouTrack and TeamCity - DDDSydney 2011

Git virtuous cycle …

git pull origin mastergit checkout –b 1002-myfeature <do some work>git add .git commit –am “did some work”git checkout mastergit merge 1002-myfeaturegit push origin master

Page 24: Git, YouTrack and TeamCity - DDDSydney 2011

Git virtuous cycle …

git pull origin mastergit checkout –b 1002-myfeature <do some work>git add .git commit –am “did some work”git checkout mastergit merge 1002-myfeaturegit push origin master

To avoid going too far from other developers:

git fetch origin mastergit rebase origin/master

Page 25: Git, YouTrack and TeamCity - DDDSydney 2011

Git demo

Page 26: Git, YouTrack and TeamCity - DDDSydney 2011

TeamCityContinuous Integration for• Fast feedback• Automated test execution• Traceability• Problem Diagnoses• Automated deployment

Page 27: Git, YouTrack and TeamCity - DDDSydney 2011

TeamCity

Clean web based UI, usable by technical and non-technical users

Page 28: Git, YouTrack and TeamCity - DDDSydney 2011

TeamCity

Quick and easy to create new projects, change existing projects, and create templates for future projects

Page 29: Git, YouTrack and TeamCity - DDDSydney 2011

TeamCity

Tight integration with YouTRACK allows YouTRACK to update tasks based on commit messages in TeamCity builds

Page 30: Git, YouTrack and TeamCity - DDDSydney 2011

TeamCity

Platform agnostic, it can build multiple language types and project types

Page 31: Git, YouTrack and TeamCity - DDDSydney 2011

TeamCity

Pulls commits from pretty much any source control system

Page 32: Git, YouTrack and TeamCity - DDDSydney 2011

TeamCity

Allows people to take ownership of broken builds and mark them as under investigation

Page 33: Git, YouTrack and TeamCity - DDDSydney 2011

TeamCityAnd more …

Adaptive test reordering, artifacts stored against builds, build chaining, parallel builds, pre-tested commits, code inspections and code duplicate

reporting, integrated diff, plugins for most IDEs, multiple notification options, integration with

ReSharper, dotCover, Jira, Bugzilla, and integration with Amazon EC2 for on-demand scaling

Page 34: Git, YouTrack and TeamCity - DDDSydney 2011

TeamCity

Free for up to 20 build configurations$299 for additional build agents$1999 for unlimited usage

Page 35: Git, YouTrack and TeamCity - DDDSydney 2011

TeamCity demo

Page 36: Git, YouTrack and TeamCity - DDDSydney 2011

YouTRACK

Issue tracking for:• Features and tasks• Bugs and defects• Project tracking• Traceability

Page 37: Git, YouTrack and TeamCity - DDDSydney 2011

YouTRACK

Simple Web based UI

Page 38: Git, YouTrack and TeamCity - DDDSydney 2011

YouTRACK

Command based concept for working on issues, with extensive keyboard support

Page 39: Git, YouTrack and TeamCity - DDDSydney 2011

YouTRACK

User and project based tagging

Page 40: Git, YouTrack and TeamCity - DDDSydney 2011

YouTRACK

Flexible linking of issues and creating relationships

Page 41: Git, YouTrack and TeamCity - DDDSydney 2011

YouTRACK

Flexible notifications via email or Jabber, closely related modifications are merged to single emails and support threading

Page 42: Git, YouTrack and TeamCity - DDDSydney 2011

YouTRACK

Export of issues to CSV, HTML and via REST API

Page 43: Git, YouTrack and TeamCity - DDDSydney 2011

YouTRACK

Tight integration with TeamCity and Source Control for full issue lifecycle traceability

New Issue Code Commit Build Issue Updatevirtuous cycle

Page 44: Git, YouTrack and TeamCity - DDDSydney 2011

YouTRACK

Free for up to 10 users$249 for 25 users$999 for 100 users

Page 45: Git, YouTrack and TeamCity - DDDSydney 2011

YouTRACK demo