Skip to content

Latest commit

 

History

History
62 lines (46 loc) · 1.7 KB

File metadata and controls

62 lines (46 loc) · 1.7 KB

Version control and distributed software development

Version control

What is it?

  • Keeping track of changes in files, manage how changes are combined
  • Important terms: repository, branches, commit, merge

More detail: - branch naming 'conventions': main, develop, ...

Why is it important?

  • Work on multiple things/with multiple people
  • Track who did what, when did things break, undo things

How is it done?

git - but also mercurial
Quick summary cheatsheet: init, branch, checkout
add, commit, reset

Hosting a repository

GitHub is suggested for MDAKits, since you'll need a GitHub account to register a Kit, but not required.

What is it?

  • Putting repositories where they can be accessed online
  • Important terms: local vs remote, origin/upstream/fork/clone; pull requests+review
  • Highlight: Git vs. GitHub

Why is it important?

  • better sharability/accessibiltiy of the above
  • can provide lots of ways to add/automate lots of things! e.g. see GitHub below

How is it done?

GitHub - but also GitLab, BitBucket
Quick summary cheatsheet: clone, push, pull Link to where we describe fork+clone+push+PR in examples?

Overview of things you can do with GitHub

(gather links to relevant sections)

  • Issues + Pull Requests (and can have templates for these)
  • GitHub discussion
  • git tags + releases
  • GitHub actions: codecov, tests/CI, linters, ...
  • documentation: readmes, tie into readthedocs, githubpages