Presentation is loading. Please wait.

Presentation is loading. Please wait.

Version Control Systems. Version Control Manage changes to software code – Preserve history – Facilitate multiple users / versions.

Similar presentations


Presentation on theme: "Version Control Systems. Version Control Manage changes to software code – Preserve history – Facilitate multiple users / versions."— Presentation transcript:

1 Version Control Systems

2 Version Control Manage changes to software code – Preserve history – Facilitate multiple users / versions

3 No Tool Primitive version control – Multiple copies:

4 Old School CVS / Subversion – Server hosts master version – Checkout copies – Lock to write

5 New Hotness Distributed Version Control – Everyone has own copy of code : repository – Can pull/push changes from one repository to another – Examples: Mercurial, Git

6 Repository Start by creating new repository or cloning existing Repository is – Files –.hg folder History / change info

7 What Gets Stored Store : – Source code – Needed files for building Do not store : – Personal pref files (.user) – Build output (executable, makefiles, etc…)

8 .hgignore Stores list of files to never commit – * matches anything

9 Mercurial Basics Commit : make a snapshot of a set of changes – One "unit" of work Revision history – Can view state/return to any commit – Update : change all files to match state at a revision

10 Push/Pull Repositories can be hooked to server – Allow pushing to the server / pulling from the server

11 Divergence Multiple changes from point produce Branches – Intentional Feature branch Maintenance branch – Accidental Two people working at same time

12 Merge Merge : combining two revisions – Can be done automatically if no conflict

13 Conflicts Conflicts : changes that can't be auto reconciled

14 Resolve conflicts : – Pick changes you want – save those – Kdiff : tool to identify/resolve conflicts Managing Conflict

15 Hosted Repositories Github - Git Bitbucket – Mercurial or Git – Free unlimited.edu accounts!


Download ppt "Version Control Systems. Version Control Manage changes to software code – Preserve history – Facilitate multiple users / versions."

Similar presentations


Ads by Google