スポンサーリンク

【Git】【GitHub】チーム開発に必要なコマンドを学ぶ
⑫ファイルを削除する(git rm)

Git-GitHub_応用
ギダイ
ギダイ

ここは、エンジニア未経験の私が Git、GitHub を勉強した内容を備忘録を兼ねて記録していく記事になります。

今回の記事は、『ファイルを削除する(git rm)』について解説していきたいと思います。

Git 管理から削除する場合実際にファイルを削除する場合に分かれるので、使い分けをできるようにしましょう。

 

過去の記事は、下のリンクよりご確認ください!

 

今回の記事は、下記の内容を解説いたします。

  • git rm コマンドについて
  • GitBashにて git rm コマンドを実際に操作する

 

git rm コマンドの紹介

ファイルを削除したい場合には、GitBash にて git rm コマンドを使用する事でファイルの削除ができます。

※ rm は、remove の略です。

git rm コマンドにてファイルを削除する際には、Git 管理からファイルを削除する場合と、実際にファイルを削除する場合に分けて、コマンド入力が異なります。

 

Git 管理からファイルを削除する

Git 管理からファイルを削除する場合は、GitBashにて「 git rm –cached <ファイル名> 」を入力します。

主に、誤ってコミットしてしまったファイルリポジトリで管理してはいけないパスワード等が記載されているファイル)を Git 管理から外す際に使用されます。

※Git 管理からのみ削除されて、実際のデータには削除されずに残っている状態。

 

実際にファイルを削除する

Git 管理からではなく実際にファイルやディレクトリを削除したい場合には、GitBash にて「 git rm <ファイル名> 」または「git rm -r <ディレクトリ名>」を入力する事で削除を行います。

  • git rm <ファイル名>:ファイルを削除する
  • git rm -r <ディレクトリ名>:ディレクトリを削除する

git rm コマンドを使用すると、コミットされた Git の記録からも削除されて、自分のローカルワークツリーのファイルからも削除されます。

 

簡単なイメージ図

 

GitBash (ターミナル)にて実際に入力する

それでは、実際に GitBash にて git rm コマンドを実行していきます。

GitBash を立ち上げたら、前回の記事(⑪変更履歴を確認する)で使用したgit_training 」のディレクトリに移動してください。

 

まず始めに GitBashにて「 ls」と入力してファイルがあるか確認しておきます。

今まで使用してきた index.html がありました。

 

git rm コマンドを実行する

それでは git rm コマンドを使用していきます。

GitBashにて「 git rm index.html 」と入力してみましょう。

index.html をリムーブしたという表示が出たと思います。

 

では、今のファイル状況を確認していきます。

GitBash にて 「 ls 」と入力してください。

何も表示されなければ、問題なくワークツリーから削除されている状態ということになります。

 

次に git status コマンドで状況を確認してみます。

GitBash にて 「 git status 」と入力してください。

Changes to be committed という表示が出ています。

これは、ステージに上げられている変更があると言われています。

更に下側を見てみると deleted: index.html という表示もある事から、ステージにて index.html が削除された記録が保存されているとういう事が分かります。

これが、ワークツリーからもリポジトリからも削除されたという事です。

 

それでは、一旦元の状態に戻しておきます。

GitBash にて「 git reset HEAD index.html 」と「 git checkout index.html 」と入力すると元の状態に戻ります。

上記画像の表示がでたらOKです。

ギダイ
ギダイ

元に戻すコマンドは、今はこのようなコマンドもあるだ!と思っていただければOKです(^ω^)

※今後、別の章にて解説いたします!

 

今の状況確認の為に GitBash にて「 ls 」と「 git status 」を入力してみましょう。

ファイルが復活している事と、変更点がないという事が表示されたと思います。

 

git rm –cached コマンドを実行する

元の状態に戻りましたら、次は git rm –cached コマンドを実行してみましょう。

GitBash にて「 git rm –cached index.html 」と入力してください。

index.html がリムーブされたと表示されました。

 

では、GitBash にて 「 ls 」と入力して状況確認を行います。

index.html ファイルが存在していると表示されました。

 

次は、GitBash にて「 git status 」と入力して状態を確認します。

先程と同様にChanges to be committeddeleted: index.html という表示がされています。

これは、ステージに上げられている変更があるという事でした。

更に下側を見てみると Untracked files という表記が続いています。

これは、追跡できていないファイルがあるという事です。

少し分かり難いですが、index.html という新規ファイルがあるという事です。

 

この状況をまとめると、リポジトリからだけファイルが削除されて(Git の記録だけ削除されて)いるので、今の Git 管理には index.html ファイルが記録されていない状態という事です。

ギダイ
ギダイ

別の表現をすると、ワークツリーには index.html があるので Git から見ると新しいファイルがあると認識されてしまっている状態という事です。

このように、–cached オプションを付ける事でリポジトリからだけファイルを削除する事ができるという事です。

 

それでは、元の状態に戻しておきます。

GitBash にて「 git reset HEAD index.html 」と入力してください。

 

念の為、状態の確認も行っておきましょう。

GitBash にて「 ls 」と「 git status 」と入力してください。

index.html ファイルも存在していて、変更点がないという表示が出ていればOKです。

 

お疲れ様でした。今回は以上です。

ファイルを削除する(git rm)を解説してみました。

ギダイ
ギダイ

何か不具合等がでましたら、私で分かる事でしたらお答えしますのでコメントや問い合わせよりご連絡ください!

次回の記事は、『ファイル名の変更を理解する(git mv)』を解説してみたいと思います。

 

 

 

 

 

UPSTART!!(=゚ω゚)ノ

#Git #GitHub #プログラミング #初学者

コメント

タイトルとURLをコピーしました