851-0585-04L – Modeling and Simulating Social Systems with ... · Lecture 1 – Introducing GIT...

Preview:

Citation preview

2012-09-24 © ETH Zürich |

851-0585-04L – Modeling and Simulating Social Systems with MATLAB

Lecture 1 – Introducing GIT

© ETH Zürich |

Chair of Sociology, in particular of

Modeling and Simulation

Karsten Donnay and Stefano Balietti

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 2

Revision Control: What?   Revision (or version) control systems are software

aimed at managing changes to documents (text files).

  Famous version control software:   TRADITIONAL: CVS, SVN;

  MODERN: Bazaar, Mercurial, GIT.

  Throughout the whole course GIT will be:   Your precious ally in developing your project code.

  The default tool for the submission of your research proposal and the final submission of all the project files.

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 3

Revision Control: Why?   Because the human brain was not initially created for

programming...

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 4

Revision Control: Why?   Team Work

Betty Karl Kornelius

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 5

Revision Control: Why?   Team Work

Betty Karl Kornelius

How to efficiently integrate our

code ???

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 6

Revision Control: Why?   Team Work

Betty Karl Kornelius

How to efficiently integrate our

code ??? GIT provides automatic tools to visualize diff., merging code, and track the history of the project!!

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 7

Revision Control: Why?   Time Machine

coding starts…

Initial agent loop.

Super-cool plot added.

Simulation on network

Deadline for submission Weeks 1 3 4 6

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 8

Revision Control: Why?   Time Machine

coding starts…

Initial agent loop.

Super-cool plot added.

Simulation on network

Deadline for submission Weeks 1 3 4 6

breaks What to do now?

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 9

Revision Control: Why?   Time Machine

coding starts…

Initial agent loop.

Super-cool plot added.

Simulation on network

Deadline for submission Weeks 1 3 4 6

breaks What to do now?

GIT can save periodic snapshots of your code (commits) All past commits are stored and can be easily reintegrated.

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 10

Revision Control: Why?   Time Machine

coding starts…

Initial agent loop.

Super-cool plot added.

Simulation on network

Deadline for submission Weeks 1 3 4 6

breaks What to do now?

GIT can save periodic snapshots of your code (commits) All past commits are stored and can be easily reintegrated.

Super-cool plot added.

Recover changes

Super-cool plot is back

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 11

Course repository   The repository where you may find information

concerning the course is:

https://github.com/msssm

  It also gives you easy access to last year's projects (code, reports etc.)

https://github.com/msssm/interesting_projects/wiki

2012-09-24 K. Donnay & S. Balietti / kdonnay@ethz.ch sbalietti@ethz.ch 12

References   Git Home Page: http://git-scm.com/

  Git General Info: http://git-scm.com/about

  Github Home Page: https://github.com/

  GitX (a gui for OS X): http://gitx.frim.nl/

  Git in 5 minutes: http://www.fiveminutes.eu/a-case-for-git/

  Git Book http://book.git-scm.com/

Recommended