ホームページ  >  記事  >  バックエンド開発  >  2 つの github go プロジェクトを操作するためのベスト プラクティス

2 つの github go プロジェクトを操作するためのベスト プラクティス

王林
王林転載
2024-02-08 23:48:31705ブラウズ

处理两个 github go 项目的最佳实践

php エディター Baicao は、2 つの GitHub Go プロジェクトを処理するためのベスト プラクティスを紹介します。開発プロセスでは、多くの場合、複数のプロジェクト間の依存関係やコードの共同作業に対処する必要があります。この記事では、プロジェクト構造の最適化、依存関係の管理、競合の解決、コードの保守性とスケーラビリティの向上に役立つ効果的な方法と提案をいくつか紹介します。初心者と経験豊富な開発者の両方がその恩恵を受け、開発効率とプロジェクトの品質を向上させることができます。これらのベスト プラクティスを一緒に検討しましょう。

質問内容

githubをベースに2つのgolangプロジェクトを開発しており、一方は他方に依存しています。

プロジェクト B (github.com/B) に依存するプロジェクト A (github.com/A) があるとします。そこで今、プロジェクト B に変更を加えてコードをプッシュし、プロジェクト A で go get github.com/B を実行してプロジェクト B の最新コードを取得しています。

このプロセスは非常に時間がかかり、私には適切とは思えません。プロジェクト B のファイルの GO_PATH の場所が変更されたと思ったのですが、GO_PATH でダウンロードしたプロジェクトは読み取り専用のようです。

これを行うより良い方法はありますか?

解決策

golang ワークスペースを使用する

golang バージョンが 1.18 の場合は、ワークスペース機能を利用して開発エクスペリエンスを向上させることができます。

例を使用して、github.com/B に依存する github.com/A を作成しましょう。

  1. フォルダーの名前が workspace
  2. であると仮定して、それらが同じ親フォルダー内にあることを確認してください。
  3. cd workspace で、go mod init ./A && go work use ./B
  4. ワークスペースで実行します github.com/A
  5. を実行します

結果として、ローカル開発環境では常に github.com/B のローカル バージョンを使用することになるため、リモートで同期する必要はありません。

以前のバージョンの go を使用している場合、最良の選択肢は、このプロセスを自動化するスクリプトを作成することだと思います。

以上が2 つの github go プロジェクトを操作するためのベスト プラクティスの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。