04 Version Control
04 Version Control
04 Version Control
Survival Skills
Decoding: Trade
accuracy for speed...
IMAGEIO
OP
EN
CV
Looks the same, but
not px by px!!
Exercises **UPDATE**
● You have 1 full week (Mo after lecture to Mo before lecture)
● If you’re too late… you’re too late. No exceptions. You had enough time.
● You only get the bonus point, if you tackled and tried with effort all tasks.
● Friday we will have Q&As, further examples, tipps&tricks etc.
● The solution will be provided as soon as possible after the deadline.
?!?
● Thesis_2.docx
● Thesis_2_anki.docx
● Thesis_2_AB.docx
● …..
● Thesis_final.docx
● Thesis_final_anki.docx
● Thesis_final2.docx
● Thesis_final2_fix.docx
Software versioning
Semantic versioning
Example: Python versioning, e.g. 2.7 and 3.10 → major change may indicate incompatibilities
and breaking changes!
More on SemVar
Alpha, Beta, Release Candidate
https://ably.com/blog/practical-guide-to-diff-algorithms
Apache Subversion (SVN)
Issue:
● Renaming is copy&delete that is fed back to complete
file history → could break things in older versions
The BitKeeper controversy (early 2000s)
https://github.blog/2020-12-17-com
mits-are-snapshots-not-diffs/
https://docs.python-guide.org/writing/structure/#structure-of-code-is-key
Content of repo
Licenses
https://choosealicense.com/
Licenses on Github
Documentation
● Sphinx
● Read The Docs
https://www.writethedocs.org/guide/writing/beginners-guide-to-docs/
https://github.com/psf/black
Use cookie cutter for your projects
Caveat: I have never used this on my own though...
&
Creating a repo and installing it with pip
The first step is to create an account on GitHub. Then, your task is to set a new public
repository!
This repo will contain the necessary structure to be installed using pip. You will create a
package containing a function that we will install and check directly in our virtual
environment.
Description of the exercise
● Create a Github account if you don’t have one
● You get a script idea from us with the instructions to follow.
● Create a public repository for the script and make it a pip installable.
● Ensure that you have a proper README, a license file, etc.