Author: Jane Nguyen
Last updated: 19 December 2025
<aside> ✉️
Feel free to contact jane.nguyen1@monash.edu if you have any suggestions or notice anything that needs to be changed or updated!
</aside>
<aside> ⚠️
All of these notes are specific to connecting git to gadi via SSH ONLY.
</aside>
<aside> <img src="/icons/code_red.svg" alt="/icons/code_red.svg" width="40px" />
Anything within < > characters denote where something specific needs to be in its place.
</aside>
Notes
pwd)git init
.git folder that stores snapshots of all the files between commits (stores all the records) ⇒ DO NOT TOUCH this file.gitignore file here! It will create a lot of unnecessary problems because the GitHub repository isn’t ‘empty’This should take you to a page like the one pictured below:

unique SSH url to your repository. It starts with git@github.com:unique SSH url by clicking on the “copy” button (it looks like two stacked squares)git remote add origin <unique SSH url you copied>git branch -M maintouch .gitignore
.gitignore : https://www.w3schools.com/git/git_ignore.aspgit add .gitignoregit commit -m "create .gitignore file"
git push to workgit push -u origin main✅ After the above steps are complete, a repository has been successfully created & connected to your chosen directory!
Table of Contents
<aside> <img src="/icons/info-alternate_blue.svg" alt="/icons/info-alternate_blue.svg" width="40px" />
The below syntax, functions and actions would only appear and work in a repository that has been opened, if you are working from it.
</aside>
| Action | 🖥️ Terminal syntax | 🧩 In Jupyterlab Git Extension | What it does |
|---|---|---|---|
| git add | git add <specify filename* to add> |
➕ button (appears next to a file in list) | adds this file to the “staging platform” |
| git commit | git commit -m "<message>" |
at the bottom where there are summary and description prompts (executed when commit button is clicked) | removes the file from the “staging platform” and creates a record with the included message. |
| git push | git push |
☁️ ⬆️ button (appears at the top of the extension) | |
| 🟠 appears on this button if there are un-pushed commits | sends what is in your local repository TO GitHub | ||
| git pull | git pull |
☁️ ⬇️ button (appears at the top of the extension) | sends what is in GitHub TO your local repository |
| git status ℹ️ | git status |
basically how the extension displays the categories of files | provides the status of the repository, listing files that have been staged, that are different or new to the repository etc.. |
| git log ℹ️ | git log |
lists the commit messages | |
| (generally not used) | |||
| git restore | git restore |
||
| (may be more syntax!) | “discard changes” button | change disappears |
*.ipynb which would add all files with that ending* **which should(?) add everything in the directory
<aside> <img src="/icons/info-alternate_blue.svg" alt="/icons/info-alternate_blue.svg" width="40px" />
The buttons that can be clicked on in the extension will have their function appear as text if the button is hovered over.
</aside>
<aside> <img src="/icons/cursor-button_yellow.svg" alt="/icons/cursor-button_yellow.svg" width="40px" />
“Refresh” button
Example from Elio:
https://github.com/eliocamp/access-s2_ice-eval
<aside> <img src="/icons/code_blue.svg" alt="/icons/code_blue.svg" width="40px" />
</aside>