The goal of this document is to explain a lab responsible (Professor, Senior Scientist, or appointed data officer) how to organize the lab's source codes so that no code gets lost.
# Introduction
It is important to keep your lab's data organized -- you may want to store here:
- classes transcripts and exercises
- project proposals
- scientific papers
- semester and master projects
- theses of your PhD students
- code used in the papers, theses and projects
- books source files
# Data organization, a suggestion
You will store both data and keep track of the people who use the data. Within c4science, we suggest the following structure
TODO
Create a project for a lab, to host the lab's repositories and other activities
====================================================
- from the [[ https://c4science.ch/project/ | project application ]], click on {F17849}.
- you want to create a project that is visible to all users and editable by project members. If you forget to add yourself to the project, Phabricator will remind you.
{F17864}
- You will want to add individual subproject (for example, one per PhD thesis in your lab). Your "root project" will inherit all members from its subprojects. Thus we suggest you
- associate a group to the project, by creating a subproject of type group. From your "root project" page, click on "Subprojects"
{F17870}
- then, create subproject. Trust us, this works despite the warning saying it's only partially implemented
{F17876}
- accept the "conversion"
- set the permissions as indicated in the image, and, most important, set the icon to "group".
{F17882}
- now create another subproject, to which we will attach a repo
{F17888}
- you can now [[https://c4science.ch/w/c4science/repo/ | create a repo ]]. Below is an example of the permissions you may want to set
{F17894}
- instead of creating the repository immediately, we want to configure some options first
{F17900}
- in particular, we want to edit the basic information. You may want a short name for the repo (for example, with no spaces) and indicate that is belongs to your newly created subproject.
{F17906}
In order to have the repo appearing in the corresponding project, you have to add a link to it. From your project page, click on "Manage" > "Edit Menu" > "Configure Menu" > "Link" . Paste the Repo's link to the URI field and change the icon to "Diffusion".