はじめに

主要な構成品

Odoo.shを使用する際は、関連する主要なコンポーネントを理解しておくことが重要です:

これらはすべて相互に接続されていますが、それぞれがOdooアプリケーションの開発とデプロイにおいて独自の役割を果たします。これらが連携することで、コード開発から実際の本番業務利用までの首尾一貫したパイプラインが形成されます。

GitHubリポジトリをご確認ください。

GitHubリポジトリは、特定のプロジェクトのすべてのファイルとフォルダが格納されているコンピュータ上のフォルダのようなものです。異なる点は、GitHub上に保存されており、異なるコンピュータから複数の人がアクセスして編集できることです。

言い換えると、GitHubリポジトリはプロジェクトのファイルを保存し、他の人と共有できる場所です。これにより、他のユーザーと共同作業したり、変更を加えたり、プロジェクトに貢献したりできます。また、時間の経過に伴うプロジェクトのすべての変更履歴も記録されるため、必要に応じて以前のバージョンに簡単にロールバックできます。

さらに、GitHubには課題追跡、プルリクエスト、コードレビューなど、プロジェクト管理に役立つ多くの機能が用意されています。ソフトウェアプロジェクトの管理とコラボレーションのための強力なツールであり、世界中の開発者に広く利用されています。Odooアプリケーションのソースコードが保存されるバージョン管理されたスペースであり、すべての変更を追跡し、コラボレーションをサポートし、公開または非公開のいずれかに設定できます。

GitHubリポジトリの例

Odoo.shプロジェクト

Odoo.shプロジェクトは、GitHubと連携し、Odooアプリケーションの合理的な開発、テスト、デプロイを可能にするPlatform as a Service(PaaS)です。自動バックアップ、ステージング環境、継続的インテグレーションパイプラインなどのツールが含まれています。

Odoo.shプロジェクトの例

Odooデータベース

Odooデータベースには、業務レコード、設定、ユーザーデータなど、Odooアプリケーションで使用および生成されるすべての運用データが格納されます。

Odooデータベースの例

ユーザの種類

Odoo.shには異なる種類のユーザが関与し、それぞれがプロジェクトのライフサイクルにおいて特定の役割を持っています:

  • GitHubユーザー:Odoo.shプロジェクトにリンクされたGitHubリポジトリへのアクセス権を持つ開発者。リポジトリへのアクセス権があっても、自動的にOdoo.shプロジェクトのコラボレーターになるわけではありません。

  • Odoo.shコラボレーター:Odoo.shプロジェクトを管理する個人。各コラボレーターはGitHubユーザーにリンクされている必要があります。ただし、コラボレーターはデータベースユーザーとは異なります。

  • データベースユーザー:デプロイされたOdooデータベースのエンドユーザー。本番システムを操作しますが、開発やプロジェクト管理には関与しません。

技術的概念

Odoo.shを使用する際は、いくつかの技術的概念を理解することも重要です:

リポジトリのフォーク

GitHub上でリポジトリをフォークするとは、他のユーザーのリポジトリのコピーをご自身のアカウントに作成することです。これにより、オリジナル版に影響を与えることなくリポジトリに変更を加えることができます。

リポジトリをフォークすると、元のリポジトリにあるすべてのファイルとフォルダを含む、独自のリポジトリのコピーが作成されます。その後、他のリポジトリと同様に、コピーしたリポジトリ内のファイルに変更を加えてコミットできます。

リポジトリをフォークする利点は、オリジナル版に影響を与えることなくコードを変更できる点です。これは、新機能を試したり、他者のコードのバグを修正したりする場合に役立ちます。また、フォークしたリポジトリをプロジェクトの出発点として使用し、必要に応じて変更を加えることもできます。

フォークしたリポジトリに変更を加えたら、元のリポジトリの所有者にプルリクエストを送信して、変更内容をそのリポジトリに統合するよう依頼できます。これは、オープンソースプロジェクトが他の開発者からの貢献を受け入れる一般的な方法であり、コミュニティに参加してコーディングスキルを向上させる絶好の機会でもあります。

コミットのプッシュ

ローカルコンピュータ上のGitリポジトリで1つまたは複数のファイルに変更を加えた場合、それらの変更は未コミットとみなされます。言い換えると、Gitは変更が加えられたことを認識していますが、まだ正式に保存または記録されていません。

これらの変更を保存してGitリポジトリに追加するには、コミットを作成する必要があります。コミットとは、特定の時点におけるファイルへの変更のスナップショットです。どのような変更が、誰によって、いつ行われたかが記録されます。

コミットを作成したら、GitHubなどでホストされているリモートリポジトリにそれをプッシュできます。コミットのプッシュとは、コミット内で行った変更をローカルリポジトリからリモートリポジトリに送信し、他のユーザーが閲覧および利用できるようにすることを意味します。

要約すると、コミットのプッシュとは、Gitリポジトリ内のファイルに加えた変更をローカルコンピュータからリモートリポジトリに送信することです。これは、変更を他のユーザーと共有し、プロジェクトで共同作業を行うための方法です。

ブランチの統合

あるブランチを別のブランチに統合するとは、一方のブランチで行われた変更をもう一方のブランチに結合するプロセスのことです。たとえば、プロジェクトの新機能の開発のためにfeature-branchという新しいブランチを作成したとします。このブランチへの変更が完了したら、その変更をメインブランチ(通常はmasterまたはmainブランチと呼ばれます)に統合できます。

ブランチを統合する際、Gitは両方のブランチの変更を検証し、それらを結合しようと試みます。2つのブランチで行われた変更の間に競合がある場合、Gitは(コード上で)統合を完了する前に、競合を解決するよう求めてきます。