ホームページ >バックエンド開発 >Golang >Go clean の詳細な説明: コンパイルされたプロダクトの効率的なクリーニング

Go clean の詳細な説明: コンパイルされたプロダクトの効率的なクリーニング

WBOY
WBOYオリジナル
2024-04-07 12:03:011217ブラウズ

go clean コマンドは、コンパイル中間ファイルとターゲット ファイルを削除し、ディスク領域を解放し、プロジェクトをクリーンな状態に保つために使用されます。オプションは次のとおりです: -f: 確認なしで強制的に削除します -n: 削除するファイルをリストします -r: 依存パッケージを再帰的に削除します -i: 特定の依存パッケージを無視します

Go clean详解:高效清理编译产物

## Go clean の詳細説明: コンパイル生成物を効率的にクリーンアップする

go clean コマンドは、Go 言語コンパイラによって提供される便利なツールで、実行中に生成された不要なファイルを削除するために使用されます。コンパイルプロセス、中間ファイルとターゲットファイル。 go clean を使用してディスク領域を節約し、コンパイル アーティファクトが多すぎることによる混乱を防ぎます。

コマンド構文

##go clean [-f] [-n] [-r] [-i] [ビルド フラグ] [パッケージ]

オプション

  • -f: 確認を求めるプロンプトを表示せずに、指定されたすべてのファイルを強制的に削除します。
  • -n: 削除するファイルのリストを出力しますが、実際には削除しません。
  • -r: すべての依存パッケージのコンパイル製品を再帰的に削除します。
  • -i: 依存パッケージは無視できます。そのコンパイルされた製品は削除されません。
  • [ビルド フラグ]: -v (詳細出力) や -race (同時実行性の安全性チェック) などの追加のビルド フラグ。
  • [パッケージ]: クリーンアップする必要があるパッケージのリスト。省略した場合、すべての依存パッケージが削除されます。

仕組み

go clean コマンドは、Go モジュールの依存関係情報を使用して、削除する必要があるファイルを決定します。指定されたパッケージとそのすべての依存関係を反復処理し、次のようなパッケージに関連しないすべてのファイルを削除します。

    バイナリ ファイル (
  • .exe、.out)
  • ターゲットファイル (*.o)
  • 依存関係情報ファイル (*.a)
  • テストファイル (*_test.go)
  • その他の中間ファイル (
  • .mod, .sum, *.dir)

実用的なケース

現在、

というプロジェクトに取り組んでいるとします。 myproject の Go プロジェクトで、すべてのコンパイル アーティファクトをクリーンアップしたい:

go clean -n

これにより、次のように削除されるファイルのリストが出力されます:

makefile
myproject.a
myproject_test.o

実際に削除するにはこれらのファイルでは、

-f オプションを使用できます。

go clean -f

パッケージ名が指定されていない場合、

go clean はすべての依存パッケージのコンパイル製品をクリーンアップします。これは、大規模なプロジェクトや作業ディレクトリ内の複数のプロジェクトを含むシナリオをクリーンアップする場合に便利です。たとえば、プロジェクト内のすべての依存パッケージのコンパイル製品をクリーンするには:

go clean -r

以上がGo clean の詳細な説明: コンパイルされたプロダクトの効率的なクリーニングの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。