="http://www.w3.org/2000/svg" viewBox="0 0 512 512">

5 Collaborating with Git

Collaboration is an important competence to train and often group work is done collaboratively.

5.1 – Using git folders

If you would like to organize everything upfront there is always the possibility to set up a folder structure containing all the material for the different groups. This is an easy way to organize your content but can be very complex in larger classes.

–> A disadvantage with this working structure would be that all the students see the content of all other groups as well and have edit rights for all content within this project.

5.2 – Using git fork

With git fork you can fork a whole project within git, this means making a copy of an existing starting point and keep working on from there.

The advantages when working with git forks are, that each group has its own repository to work with and they can not see what other groups are doing. Also each group can set it up by themselves and manage their own git project.

As a disadvantage you might have some initial setup task to look into with your student groups until everything is working correctly.

Be cautious

First of all Jupyter files have a very special structure. This said, you should avoid working on the same file at the same time and always check in any changes you made as soon as possible. With this you can avoid git conflicts which can be quite a problem to solve because of the file structure.

Also it has to be noted that there is no real-time collaboration with git possible. So students will not see changes made by their colleagues instantly within their own files.

5.3 – Real-time collaboration

If you really need a real-time collaboration system (but ask yourself ahead if it is really needed) you would be forced to switch to other providers. Within the given structure it is not possible to offer real-time collaboration as this is only implemented by some very specific platforms and providers.

The most well-known platform in this case would be Google Colab. But be aware, this platform is hosted on Google servers, doesn’t offer any system upgrades for better performance, student would need their personal login, and its not supported from within LET.

License

Computational Competencies: Using JupyterHub with Moodle Copyright © by LET ETH Zürich. All Rights Reserved.

}