programming in teams and how to manage your code

17
Programming in Teams And how to manage your code

Upload: dora-casey

Post on 25-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Programming in Teams And how to manage your code

Programming in TeamsAnd how to manage your code

Page 2: Programming in Teams And how to manage your code

Agenda What is revision control?

Available choices

Github

BitBucket

Team Foundation Service (TFS)

TFS Demonstration

Page 3: Programming in Teams And how to manage your code

Working in a team?Most commercial programming is done in teams

To simplify project management and enforce accountability, version control is used

Page 4: Programming in Teams And how to manage your code

What is revision control?WITHOUT

If a team creates a bug, it could affect how your code too

You could loose old code or features that were removed

Anyone could add bugs/features to a project and no one would know

WITH

You are isolated on your own branch, so you know who did it

You can go back and see all old version of your project

Someone has to approve your code submission

Page 5: Programming in Teams And how to manage your code

Lingo The Basics Repository – the database

holding your code Main/Trunk – This is the primary

code Working set – A file you checked

out Tags – the name of the project

stage

Actions Check out – a downloaded file Check in – uploading the file Update – synchronizes your code Revert – toss the changes you

made

More complicated Branch – create a separate copy

of a file or folder Diff – (I bet you know) Merge – combining branches

Page 6: Programming in Teams And how to manage your code

But how does one “branch”?

Page 7: Programming in Teams And how to manage your code

That’s how Linux is made(kinda)

Page 8: Programming in Teams And how to manage your code

Some of the Options

33%

9%

13%6%

5%

12%

22%

Version Control Market Share 2009

Subversion(SVN)Team Foundation ServerVisual SourceSafePerforceClearCaseCVSOther

Technologies Git Subversion Mercurial Team Foundation

In the cloud GitHub Google Code BitBucket Team Foundation Service

Page 9: Programming in Teams And how to manage your code

Local Revision Control Open Source Solutions

TortoiseSVN GUI for SubVersioN Includes submission graphing

Git Staging Area Commits Verified Integrity

Page 10: Programming in Teams And how to manage your code

GitHub Free Unlimited public repositories Unlimited public collaborators

Paid ($7-$200 /month) Same as free, but with limited

number of private repositories

Features Team permissions Read-only, read-write, etc. Wikis Issue Tracking Assigning tasks Easy bug reporting Code Review Comment code in GitHub See code changes

Page 11: Programming in Teams And how to manage your code

BitBucket Free Unlimited public and private

repositories Up to 5 users

Paid ($10 - $200 /month) More users, from 10 to

unlimited

Mercurial or Git

Page 12: Programming in Teams And how to manage your code

Team Foundation Service Integrated into Visual Studio 2012

Support for Eclipse, Xcode

Pricing Free for 5 users, unlimited

projects

Agile Development Support

Build and Test Support

Page 13: Programming in Teams And how to manage your code

Other ProvidersGOOGLE CODE

For Open source

2Gb of free hosting

Subversion, Mercurial, or Git support

SOURCE FORGE

Unlimited bandwidth

Analytics

Issue Tracking

Open Source

Page 14: Programming in Teams And how to manage your code

Development StylesAGILE DEVELOPMENT STANDARD WATERFALL

METHOD

Page 15: Programming in Teams And how to manage your code

Queue the Demo…

Page 16: Programming in Teams And how to manage your code

What did we learn? Why revision control is important

Why you should probably be using it

Where to go if you do decide to use it

Page 17: Programming in Teams And how to manage your code

SELECT questionFROM studentWHERE confused