1
/
5

-Qiita記事Part.7-「.gitignoreしたファイルをレポジトリから削除する方法」

こんにちは、ナイトレイインターン生の田中です。
Wantedlyをご覧の方に、ナイトレイのエンジニアがどのようなことをしているか知っていただきたく、Qiitaに公開している記事をストーリーに載せています。
少しでも私たちに興味を持ってくれた方は下に表示される募集記事もご覧ください↓↓

はじめに

はじめまして株式会社ナイトレイの渡辺です。
この記事では「.gitignoreしたファイルをリポジトリから削除する方法」をまとめます。具体的には、git管理対象から外したファイルやディレクトリをインデックス環境から削除して、レポジトリからも削除する方法です。

.gitignoreしてもファイルは消えない

開発途中で.gitignoreを設定しても、今までgit管理下に置かれていたファイルやディレクトリは消えません。なので、過去にアップロードした画像ファイルなどはレポジトリに残っています。
今回はそれらをレポジトリから消し去り、今後のgit管理対象からも外していきます。

※ git知識の確認はこちらをどうぞ


インデックス環境からファイルを消す

実行例

・ファイルをインデックス環境から削除
$ git rm --cached ファイル名

・ディレクトリごとインデックス環境から削除
$ git rm --cached -r ディレクトリ名

結果(public/uploadsディレクトリごと削除した場合)

deleted: public/uploads/~~

 これで、インデックス環境から完全に消し去りました。
そして、この結果をcommitし、リモートレポジトリにpushします。
すると、今まで消したかったファイルが、リモートレポジトリからも消すことができます。

結果

 開発途中で.gitignoreを設定した場合でも、レポジトリ内にはgit管理対象から外したファイルやディレクトリが残っています。(今まで管理していたわけですから。)
それらをインデックス環境から削除することで、レポジトリ内にある今回ignoreしたファイルやディレクトリも削除できました。

※補足

今回、レポジトリ内にあるignoreしたファイルやディレクトリを削除したとしても、コミット履歴をたどることで削除したファイルを閲覧することができます。
なので、画像アップロードをテストする際など、不適切な画像をignoreせずコミットしないようにしましょう。
結論、gitignoreはignoreするべき時にしましょう。

参考リンク

最後に

私たちの会社、ナイトレイでは一緒に自社開発のWebサービスを盛り上げてくれるエンジニアメンバーを募集しています!
基本的には直接ユーザーと接することのないポジションですが、セールス部門から
「顧客の声」を教えてもらったり、希望すればユーザーとのMTGに参加することも可能です。
モチベーションの高め方はあなた次第。

このような方は是非Wantedlyからお気軽にご連絡ください(もしくはこちらまで recruit@nightley.jp

✔︎ 自社Webサービスの開発で事業の発展に携わってみたい
✔︎ 自分が開発したサービスで地域活性化に貢献したい
✔︎ 位置情報ビッグデータに興味があり、新しい活用方法を提案したい
✔︎ 地理や地図が好きで仕事中も眺めていたい

一つでも当てはまる方は是非こちらの記事をご覧ください

https://www.wantedly.com受託開発一切なし!自社WEBサービスを社長やセールスチームと一緒に開発! by 株式会社ナイトレイ
▼ナイトレイとは?
https://www.wantedly.com株式会社ナイトレイの会社情報 - Wantedly

株式会社ナイトレイでは一緒に働く仲間を募集しています

PdM・事業開発・企画
フロントエンド
データアナリスト
開発
フロントエンド
アプリエンジニア
GISエンジニア
フルスタック(希望・見込OK)
ビジネス
PdM・事業開発・企画
オープンポジション|職種応相談
営業|コンサルタント
法人営業/コンサルティング営業
コンサルティング営業
フィールドセールス
その他
データアナリスト
インターン/フィールドセールス

Invitation from 株式会社ナイトレイ
If this story triggered your interest, have a chat with the team?
株式会社ナイトレイ's job postings
1 Likes
1 Likes

Weekly ranking

Show other rankings
Like 田中 理彩's Story
Let 田中 理彩's company know you're interested in their content