こんばんは、中川です。
今回はVimから.gitignoreファイルを編集する方法をご紹介します。
別記事にてMacのテキストエディタからの編集方法も紹介していますので、よければこちらも併せてご覧ください。
[ 本記事はこんな人におすすめ ]
・Vimから.gitignoreファイルを作成・編集したい
・.gitignoreファイルの書き方を知りたい
環境・バージョン
> Swift 5.7.2
> Xcode 14.2
> macOS 13.0 Ventura
Vimとは、主にUnix系のOS(オペレーティングシステム)などで使われるテキストエディタ「vi」から派生し、上位互換として登場したテキストエディタです。
Vimの特徴として、一般的なテキストエディタ(AtomやVSCode)のGUI操作(マウスやタッチパネル操作)に対して、CLI操作(ターミナルでのコマンド操作)に特化しています。
ユーザーはターミナルにコマンドを入力することで、Vimというテキストエディタを操作することができます。
GUI ・・・ グラフィカル・ユーザ・インターフェース
CLI ・・・ コマンド・ライン・インターフェース
まずはじめに、作業ディレクトリを.gitignoreファイルが管理されている(または管理したい)ディレクトリに移動します。
ターミナルからcdコマンドで作業ディレクトリを移動しましょう。
cdコマンドで作業ディレクトリを移動するには移動先のファイルパスが必要です。
対象のディレクトリを右クリック ⇨ メニューが開いた状態で「Option⌥」キーを長押しすることでメニューが変化し、ファイルパスを取得できます。
以下のようにターミナルへドラッグ&ドロップでもファイルパスのペーストが可能です。
ターミナルからVimで.gitignoreファイルを開きます。
対象の作業ディレクトリ下で、ターミナルに以下のコマンドを打ちます。
$ Vim .gitignore
コマンドを打つと、以下のようにVimで.gitignoreファイルが展開できます。
この時、作業ディレクトリに.gitignoreファイルが存在しなかった場合、自動で空のテキストファイルが新規作成され展開されます。
Vimは起動時点ではノーマルモードとなっており、編集操作を行うことが出来ません。
ターミナルにファイルが開いている状態でキーボードの「I(アイ)」または「A」を打つことで、Vimのモードが「インサート(挿入)モード」に切り替わります。
挿入モード中はテキストの追加、削除、修正が可能になります。
「esc」キーを押すと、編集を終了してノーマルモードに戻ります。
ターミナル下部に「ーー INSERT ーー」と表示されているのが挿入モードの印です。
挿入モードに切り替わったら、あとは通常のテキスト編集と同じように.gitignoreファイルを編集していきます。
Vimには一般的なGUI操作のテキストエディタには無い便利なコマンド操作が多数提供されていますが、本記事の趣旨からは少し外れるのでここでは割愛します。
例えば、.DS_Storeファイルをgitの管理対象外にしたいときは、.gitignoreファイルに「.DS_Store」と追加します。
.DS_Store
その他、.gitignoreファイルの基本的な記述例はこちらの記事にまとめているので、よければご覧ください。
POINT
Vim内では操作方法が少し独特なので、使い始めは戸惑うかと思います。
本来のVim操作ではカーソルの移動に矢印キー(↑↓←→)は使用しませんが、Macでは矢印キーによるカーソル移動が可能となっています。
操作に慣れてきたら、Vim本来の操作方法にも手をつけていきましょう。
Vimの基本操作については、別記事にまとめて執筆ができ次第こちらにも添付します。
テキストの編集が完了したら、Vimのコマンドラインモードから修正を保存していきます。
まずはじめに、「esc」キーを押して挿入モードを終了します。
下部の「ーーINSERTーー」が消えたらノーマルモードに戻れていますので、その状態で「:wq」というコマンドを打ちます。
ノーマルモード時に「:(コロン)」を打つことでVimがコマンドラインモードになり、「:」の後ろの記述でコマンドを実行することができます。
「w」はwrite(書き込み)の意味合い、「q」はquit(終了)の意味合いを持ちます。
コマンドが打てたらEnterキーを押します。テキスト修正が保存され、以下のようにVimが終了します。
英数入力になっているか確認
Vimのノーマルモード時は、英数入力でのみ入力を受け付けます。
もし「:wq」などの文字が正常に打てない場合は、英数入力になっているかを確認しましょう。
もし、操作が分からなくなった時は
もしVimの操作が分からなくなってしまった時は、修正を破棄し、Vimを強制終了してもう一度やり直しましょう。手順は以下です。
①「esc」キーで編集モードを終了
②ノーマルモードで「:q!」コマンドを入力
③「Enter」キーで修正を破棄し、Vimを終了
こちらの記事にも同じく記載していますが、
修正した .gitignoreファイルは、自動的には反映されません。
修正後のファイルを反映させるには、ローカルGitにあるキャッシュを削除して修正後のファイルを新たに追加する必要があります。
以下の手順で .gitignoreファイルの変更を反映させることができます。
// ローカルGitのキャッシュを削除
$ git rm -r --cached .
// 修正後の.gitignoreファイルを追加&コミット
$ git add .
$ git commit -m ".gitignore update"
// 追加ファイルをリモートリポジトリにプッシュ
$ git push
これで修正後の.gitignoreファイルが反映されます。
以上、Vimからの.gitignoreファイル修正方法をご紹介しました!
要点をまとめておきましょう。
・テキストを修正するときは「インサート(挿入)モード」に切り替える
・「:wq」で修正保存、操作が分からなくなったら「:q!」で変更破棄して強制終了
・.gitignoreファイルを反映させるにはキャッシュの削除が必要
本記事があなたの作業の一助となれば幸いです
\ SHARE /
アプリ開発が学べる勉強会を開催中!
CodeCandyではアプリ開発を学ぶための勉強会を定期開催しています。
学習する習慣を身につけたい、他の参加者と作業したい、アプリ開発の基本をマスターしたい、という方のために無料で学べる勉強会です。
グループにメンバー登録して頂くと、イベント開催時にメールで通知されます。
徹底した基礎学習からマスターするiPhoneアプリ開発集中オンライン講座開講!
本書「iPhoneアプリ開発集中講座」を執筆している現役エンジニア講師陣が直接に指導!
基礎、課題実習で実践力を鍛えて、オリジナルアプリ公開までチャレンジ!
充実した転職支援もあるので、エンジニアへ転職したい人にもおすすめです!
まずは、現役エンジニアに相談できる無料相談をご利用ください。
2022年2月よりSwift学習を始め、4月からiOSアプリ開発オンラインスクール「CodeCandy」にてアプリ開発を学ぶ。 2023年10月に個人開発アプリ「unico」をリリース。現在はアプリの機能アップデートをしながら、スクール運営の技術ブログの執筆や、出版書籍の入稿チェック・デバッグにも携わる。