Erste Schritte

Hauptkomponenten

When working with Odoo.sh, it is important to understand the main components involved:

While they are all interconnected, each one plays a distinct role in the development and deployment of Odoo applications. Together, they form a cohesive pipeline from code development to a live business use.

GitHub repository

A GitHub repository is like a folder on your computer that contains all the files and folders for a specific project. The difference is that it’s stored on GitHub and can be accessed and edited by multiple people on different computers.

In other words, a GitHub repository is a place where you can store your project’s files and share them with others, so they can collaborate with you, make changes, and contribute to your project. It also tracks all changes to your project over time, so you can easily roll back to a previous version if needed.

Additionally, GitHub offers many features to help you manage your project, such as issue tracking, pull requests, and code reviews. It’s a powerful tool for managing and collaborating on software projects, and is widely used by developers around the world. a version-controlled space where the Odoo applications‘ source code is stored. It tracks every change, supports collaboration, and can be either public or private.

Beispiel eines GitHub-Repository

Odoo.sh project

An Odoo.sh project is a Platform as a Service (PaaS) that integrates with GitHub and enables streamlined development, testing, and deployment of Odoo applications. It includes tools such as automated backups, staging environments, and continuous integration pipelines.

Beispiel eines Odoo.sh-Projekts

Odoo-Datenbank

An Odoo database stores all the operational data used and generated by Odoo applications, such as business records, configurations, and user data.

Beispiel einer Odoo-Datenbank

Benutzertypen

Odoo.sh umfasst verschiedene Arten von Benutzern, von denen jeder eine spezifische Rolle im Projektlebenszyklus einnimmt:

  • GitHub users: developers with access to the GitHub repository linked to the Odoo.sh project. Access to the repository does not automatically make someone a collaborator on the Odoo.sh project.

  • Odoo.sh collaborators: individuals managing the Odoo.sh project. Each collaborator must be linked to a GitHub user. However, collaborators are not the same as database users.

  • Database users: end-users of the deployed Odoo database. They interact with the live system but are not involved in development or project management.

Technische Konzepte

Bei der Arbeit mit Odoo.sh ist es außerdem wichtig, mehrere technische Konzepte zu verstehen:

Ein Repository forken

Ein Repository auf GitHub zu forken bedeutet, dass Sie eine Kopie des Repositorys einer anderen Person in Ihrem eigenen Konto erstellen. So können Sie Änderungen am Repository vornehmen, ohne die Originalversion zu beeinflussen.

Wenn Sie ein Repository forken, erstellen Sie Ihre eigene Kopie des Repositorys, einschließlich aller Dateien und Ordner des Original-Repositorys. Anschließend können Sie Änderungen an den Dateien in Ihrer Kopie des Repositorys vornehmen und diese committen, genau wie bei jedem anderen Repository.

Der Vorteil des Forkens eines Repositorys besteht darin, dass Sie Änderungen am Code vornehmen können, ohne die Originalversion zu beeinflussen. Dies ist nützlich, wenn Sie mit neuen Funktionen experimentieren oder Fehler im Code einer anderen Person beheben möchten. Sie können das geforkte Repository auch als Ausgangspunkt für Ihr Projekt verwenden und bei Bedarf Änderungen vornehmen.

Sobald Sie Änderungen am geforkten Repository vorgenommen haben, können Sie einen Pull-Request an den Eigentümer des ursprünglichen Repositorys stellen und ihn bitten, Ihre Änderungen in sein Repository zu übernehmen. Dies ist ein gängiger Ansatz bei Open-Source-Projekten, um Beiträge anderer Entwickler zu akzeptieren. Es kann eine gute Möglichkeit sein, sich in der Community zu engagieren und Ihre Programmierkenntnisse zu verbessern.

Einen Commit pushen

Wenn Sie Änderungen an einer oder mehreren Dateien in einem Git-Repository auf Ihrem lokalen Computer vornehmen, gelten diese Änderungen als nicht committet. Mit anderen Worten: Git weiß, dass Änderungen vorgenommen wurden, aber sie wurden noch nicht offiziell gespeichert oder erfasst.

Um diese Änderungen zu speichern und dem Git-Repository hinzuzufügen, müssen Sie einen Commit erstellen. Ein Commit ist eine Momentaufnahme der Änderungen, die Sie zu einem bestimmten Zeitpunkt an den Dateien vorgenommen haben. Er erfasst, welche Änderungen vorgenommen wurden, von wem und wann.

Sobald Sie einen Commit erstellt haben, können Sie ihn zu einem Remote-Repository pushen, z. B. einem auf GitHub gehosteten. Einen Commit zu pushen bedeutet, die im Commit vorgenommenen Änderungen von Ihrem lokalen Repository an das Remote-Repository zu senden, damit andere sie sehen und nutzen können.

Zusammenfassend bedeutet das Pushen eines Commits, dass Sie die Änderungen, die Sie an den Dateien in Ihrem Git-Repository vorgenommen haben, von Ihrem lokalen Computer an ein Remote-Repository senden. So können Sie Ihre Änderungen mit anderen teilen und gemeinsam an einem Projekt arbeiten.

Einen Branch zusammenführen

Beim Zusammenführen (Merge) eines Branches in einen anderen werden die in einem Branch vorgenommenen Änderungen mit dem anderen kombiniert. Angenommen, Sie haben einen neuen Branch namens „feature-branch“ erstellt, um an einer neuen Funktion für Ihr Projekt zu arbeiten. Sobald Sie die Änderungen an diesem Branch abgeschlossen haben, können Sie diese Änderungen wieder in den Hauptbranch (oft „master“ oder „main“ genannt) zusammenführen.

Beim Zusammenführen eines Branches untersucht Git die Änderungen in beiden Branches und versucht, sie zu kombinieren. Gibt es Konflikte zwischen den in den beiden Branches vorgenommenen Änderungen, fordert Git Sie auf, diese zu lösen, bevor der Merge (codeseitig) abgeschlossen wird.