Top Banner
Source Code Management Tools Cl´ ement Delafargue ´ Ecole Centrale de Nantes – EklaWeb March 4, 2010
23
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Source Code Management tools

Source Code ManagementTools

Clement Delafargue

Ecole Centrale de Nantes – EklaWeb

March 4, 2010

Page 2: Source Code Management tools

Your workflows

The MELOG TA - How did you manage to share your work ?

I Mail ?

I USB stick ?

Page 3: Source Code Management tools

Your workflows

How would have you done

I with a single file edited by everybody at the same time ?

I if you’d wanted to discard some changes ?

Page 4: Source Code Management tools

What a SCM system is

I A history of your files

I A way to share files within a team

Page 5: Source Code Management tools

What a SCM system is NOT

A replacement to communication

Page 6: Source Code Management tools

Source Code Management Tools

Basic notions

Centralized / Decentralized

How can SCM help you ?

Page 7: Source Code Management tools

Basic notions

Repository

I Contains the history

I Not directly usable

Page 8: Source Code Management tools

Basic notions

Working copy

I Files you can work on

I An image of the repository at a certain time

Page 9: Source Code Management tools

Basic notions

Commit

I The act of sending your local modifications to a repository

I Sould be atomic

Page 10: Source Code Management tools

Basic notions

Branch

I A Parallel version

Page 11: Source Code Management tools

Basic notions

Trunk

I The main branch

Page 12: Source Code Management tools

Basic notions

Conflict resolution

I When magic is not enough

Page 13: Source Code Management tools

Source Code Management Tools

Basic notions

Centralized / Decentralized

How can SCM help you ?

Page 14: Source Code Management tools

Centralized SCM

Centralized SCM is Centralized

I Only ONE (remote) repository

Page 15: Source Code Management tools

Introducing Subversion

Page 16: Source Code Management tools

Decentralized SCM

Everybody has his own repo

I Every one has his own branch

I Eventual consistency

I Network of trust

Page 17: Source Code Management tools

When centralized is not enough

Who wants to break the trunk ?

I Committing without sharing... yet

Page 18: Source Code Management tools

When centralized is not enough

Local repository is local

I Do almost anything... even if you’re offline

Page 19: Source Code Management tools

When centralized is not enough

Branching and merging is cheap

I If a task is to last for one day or more...

I make it a branch

Page 20: Source Code Management tools

Introducing Git

Page 21: Source Code Management tools

Source Code Management Tools

Basic notions

Centralized / Decentralized

How can SCM help you ?

Page 22: Source Code Management tools

How can SCM help you ?

Your workflows... evolved

Page 23: Source Code Management tools

Copyright notice – CC-By-SA 2.0

You are free

I to Share: to copy, distribute and transmit the work

I to Remix: to adapt the work

Under the following conditions

I Attribution: You must attribute the work in the mannerspecified by the author or licensor (but not in any way thatsuggests that they endorse you or your use of the work).

I Share Alike: If you alter, transform, or build upon this work,you may distribute the resulting work only under the same orsimilar license to this one.