Distri.AI
English
English
  • ๐ŸชŸIntroduction
    • ๐ŸงฒWhat is Distri.AI
    • ๐Ÿ—ž๏ธWhitepaper
  • ๐Ÿ•น๏ธGetting Started
    • ๐Ÿ›’User
    • ๐Ÿ› ๏ธCompute Node
    • ๐ŸšฐFaucet
  • ๐Ÿ”ฑDistri.AI Aggregator
    • ๐Ÿ๏ธGPU Market
    • ๐Ÿ›ซModel Hub
    • ๐Ÿ“‘Dataset Repository
  • ๐Ÿ“ฆML Workspace
    • ๐ŸคนJupyter
    • ๐Ÿคนโ€โ™€๏ธDesktop GUI
    • ๐Ÿคนโ€โ™€๏ธVisual Studio Code
    • ๐Ÿคนโ€โ™‚๏ธJupyterLab
    • ๐ŸคนGit Integration
    • ๐Ÿคนโ€โ™€๏ธFile Sharing
    • ๐Ÿคนโ€โ™‚๏ธAccess Ports
    • ๐ŸคนTensorboard
    • ๐Ÿคนโ€โ™€๏ธExtensibility
    • ๐Ÿคนโ€โ™‚๏ธHardware Monitoring
    • ๐ŸคนSSH Access
    • ๐Ÿคนโ€โ™€๏ธRemote Development
    • ๐Ÿคนโ€โ™‚๏ธRun as a job
    • ๐Ÿ“ฌFAQ
  • ๐Ÿ“žContact & Social Media
Powered by GitBook
On this page
  • Clone Repository
  • Push,Pull,Merge,and Other Git Actions
  • Diffing and Merging Notebooks
  1. ML Workspace

Git Integration

PreviousJupyterLabNextFile Sharing

Last updated 1 year ago

Version control is a crucial aspect of productive collaboration. To make this process as smooth as possible, we have integrated a custom-made Jupyter extension specialized on pushing single notebooks, a full-fledged web-based Git client (), a tool to open and edit plain text documents (e.g., .py, .md) as notebooks (), as well as a notebook merging tool (). Additionally, JupyterLab and VS Code also provide GUI-based Git clients.

Clone Repository

For cloning repositories via https, we recommend to navigate to the desired root folder and to click on the git button as shown below:

Push,Pull,Merge,and Other Git Actions

To commit and push a single notebook to a remote Git repository, we recommend to use the Git plugin integrated into Jupyter, as shown below:

Diffing and Merging Notebooks

In combination with Git, jupytext enables a clear diff history and easy merging of version conflicts. With both of those tools, collaborating on Jupyter notebooks with Git becomes straightforward.

This might ask for some required settings and, subsequently, opens , a web-based Git client with a clean and intuitive UI that makes it convenient to sync your code artifacts. Within ungit, you can clone any repository. If authentication is required, you will get asked for your credentials.

For more advanced Git operations, we recommend to use . With ungit, you can do most of the common git actions such as push, pull, merge, branch, tag, checkout, and many more.

Jupyter notebooks are great, but they often are huge files, with a very specific JSON file format. To enable seamless diffing and merging via Git this workspace is pre-installed with . Nbdime understands the structure of notebook documents and, therefore, automatically makes intelligent decisions when diffing and merging notebooks. In the case you have merge conflicts, nbdime will make sure that the notebook is still readable by Jupyter, as shown below:

Furthermore, the workspace comes pre-installed with , a Jupyter plugin that reads and writes notebooks as plain text files. This allows you to open, edit, and run scripts or markdown files (e.g., .py, .md) as notebooks within Jupyter. In the following screenshot, we have opened a markdown file via Jupyter:

๐Ÿ“ฆ
๐Ÿคน
ungit
ungit
nbdime
jupytext
ungit
jupytext
nbdime