🧹

Git Cleanの使い方ガイド:未追跡ファイルを安全に削除する方法

2025/01/28に公開

Gitを使用していると、リポジトリ内に未追跡(untracked)ファイルやディレクトリが溜まってしまうことがあります。これらの不要なファイルを整理するために、git clean コマンドを利用することができます。本記事では、git clean の基本的な使い方から、安全に未追跡ファイルを削除する方法まで詳しく解説します。

1. git clean とは?

git clean は、Gitリポジトリ内の未追跡ファイルやディレクトリを削除するためのコマンドです。これにより、作業ディレクトリをクリーンな状態に保つことができます。ただし、このコマンドは削除を伴うため、実行前に慎重に確認することが重要です。

2. 未追跡ファイルの確認

削除を実行する前に、どのファイルやディレクトリが未追跡であるかを確認しましょう。これには -n (ドライラン)オプションを使用します。

git clean -fdn

オプションの説明

  • -f(force):実際に削除を行うために必要です。
  • -d(directories):未追跡のディレクトリも削除対象に含めます。
  • -n(dry run):実際には削除せず、削除される予定のファイルやディレクトリを表示します。

実行例

$ git clean -fdn
Would remove accounts/Domain/
Would remove databases/Domain/
Would remove paperlist/base64Utils.js
...

この出力を確認し、削除しても問題ないことを確認してください。

3. 未追跡ファイルとディレクトリの削除

確認が済んだら、実際に未追跡ファイルとディレクトリを削除します。

git clean -fd

これにより、表示された未追跡のファイルとディレクトリが削除されます。

4. 無視されたファイルも削除する(オプション)

.gitignore に記載されている無視されたファイルも削除したい場合は、-x オプションを追加します。

git clean -fdx
  • -x.gitignore に記載された無視されたファイルも削除対象に含めます。

⚠️ 注意事項

-x オプションを使用すると、重要な設定ファイルや必要なアセットなども削除される可能性があります。使用する際は十分に注意し、必要なファイルが含まれていないことを確認してください。

5. 実践的なワークフロー

以下は、git clean を安全に使用するための基本的なワークフローです。

# 削除対象を確認
git clean -fdn

# 問題なければ削除を実行
git clean -fd

# (オプション)無視ファイルも削除する場合
git clean -fdx

6. まとめ

git clean コマンドは、Gitリポジトリ内の未追跡ファイルやディレクトリを整理する強力なツールです。しかし、削除操作は取り消しができないため、実行前に必ず確認を行うことが重要です。この記事の手順に従い、慎重に操作を行うことで、作業ディレクトリをクリーンで効率的な状態に保つことができます。


参考情報:

  • Git公式ドキュメント: git-clean
  • .gitignore の書き方ガイド
  • 試したgit version 2.33.0

安全なGit運用を心がけ、効率的な開発環境を維持しましょう!

Discussion