Skip to content
Jan Kristof Nidzwetzki edited this page Jan 12, 2021 · 2 revisions

This page describes how you can contribute to the SECONDO project. In addition, the page contains information for users who want to migrate to git and have used cvs so far. General information about the usage of GitHub can be found here.

The tasks are performed with git on the command line. Many IDEs (e.g., Visual Studio Code) contain a git client, which allows performing the commands directly from the IDE. In addition, there are standalone tools like Git Extensions to perform the operations without using the command line.

Note: This page describes the workflow via git. At the moment, the SECONDO project uses CVS for the management of the source code. GitHub is used as a read-only mirror of the repository. The content of the page becomes valid as soon as the project uses GitHub as the primary repository.

Contributing when you have write access to the SECONDO project

  • Checkout the repository with git clone https://github.com/secondo-database/secondo.git. This command will create a folder named secondo in the current directory, which contains the source code of the SECONDO project. The command is only needed if you don't have already a copy of the repository on your local computer. From now on, you can update your local copy of the repository, as shown in the next step. The command does the same as cvs checkout.

  • Update the repository with git pull. This command fetches the changes from GitHub and updates the local repository. This command does the same as cvs update.

  • Make your changes and commit the changes: After you have complete your changes, you can review the changes files with the comment git status. To commit the changes, you need to add them to the current commit via git add <file>. In contrast to CVS, this command is needed for all changed files (by using cvs, only files that are newly created need to be added). Now you can create a commit via git commit, as in cvs commit your default editor opens, and you can type in a commit message. Now the commit is created in your local copy of the repository. The commit needs to be pushed to the repository at GitHub; this is done by calling git push.

Contributing when you have no write access to the SECONDO project

The workflow is almost the same as described above. The exception is that you have to fork the project before you can push changes to the project. In addition, the pushed changes need to be integrated into the project via a pull request. Both tasks can be done in the web interface of GitHub. Forking a project and creating a pull request is described here.