0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Git】不要な新規ディレクトリやファイルをコマンド1発で削除する方法

Posted at

背景

Git管理されているソースコードで開発をしているとします。

その過程で未コミットな新規(untrackedな)ディレクトリやファイルを削除したい時に、コマンド1発でそれを消す方法を恥ずかしながら最近知ったので、初心者向けに記録しておこうと思い筆を取りました。

状況

ディレクトリ構成
$ tree
.
├── committed.txt
└── uncommitted.txt

上記のようなGit管理されているソースがあり、ファイル名のとおりのcommit状況だったとするとgit statusを実行すると

git status
$ git status
On branch master
Untracked files:
  (use "git add <file>..." to include in what will be committed)
	uncommitted.txt

nothing added to commit but untracked files present (use "git add" to track)

となります。

このようなシンプルな状況ではrmコマンドを叩けば良いですが、複数ディレクトリにuntrackedなファイルが散らばっているときは非常に面倒です。

解決策

Gitのcleanコマンドを使うとuntrackedなファイルを削除することができます。
.の箇所でパスをしています。

git clean
$ git clean -f .
Removing uncommitted.txt

$ git status
On branch master
nothing to commit, working tree clean

ちなみに-nをつけるとドライランとなり、消されるファイルを事前に確認することができます。

git clean dry run
$ git clean -nf .
Would remove uncommitted.txt

まとめ

Git管理されているソースから不要な新規ファイルを消したい場合は下記の要領でGitのcleanコマンドを使うと1発で消すことができます。

git clean -f .

参考

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?