--- config: theme: base commitLabelFontSize: '16px' --- gitGraph commit id: "Added intro" commit id: "Fixed typo"
AESB2122 - Signals and Systems with Python
You probably have faced the following issues, but think about such problems in a larger project with many collaborators.
report.docx
report_final.docx
report_final2_reallyfinal.docx
report_final2_reallyfinal_v2.docx
report_final2_reallyfinal_v2_fixed.docx
Which one to use? 🤔
project_2025-09-09.docx
Easy to lose track and errors can creep in
Whose version is correct?
We want a “time machine”!
Tool that records changes to files over time.
Allows you to:
- Revert to previous versions
- Work together safely keeping track of changes
- Merge changes intelligently
--- config: theme: base commitLabelFontSize: '16px' --- gitGraph commit id: "Added intro" commit id: "Fixed typo"
--- config: theme: base --- gitGraph commit id: "stable version" branch new-feature checkout new-feature commit id: "Tried new feature" commit id: "Improved new feature" checkout main merge new-feature id: "Merged changes"
gitGraph checkout main commit id: "stable version" branch new-feature checkout new-feature commit id: "Tried new feature" commit id: "Improved new feature" branch risky-idea checkout risky-idea commit id: "Tried risky idea" commit id: "Tried improved risky idea" checkout main merge new-feature id: "Merged changes"
Created 2005 by Linus Torvalds
Distributed: everyone has full history
Industry standard
Platforms: GitHub, GitLab, Bitbucket
We’ll be using Git and GitHub in this course.
git --version
brew install git
sudo apt-get install git
Open a terminal and run:
git config --global user.name "Your Name"
git config --global user.email "your_email@example.com"
Replace "Your Name"
and "your_email@example.com"
with your actual name and email address. Keep the double quotes.
Create a GitHub account if you don’t have one. You can use your university email.
Add your SSH key to GitHub for secure authentication:
If git
is not recognized as a command (e.g. in VS Code, Jupyter, etc.), you may need to restart your terminal or computer after installation.