.gitignoreについて
https://ricapitolare.vercel.app/svg?url=http://www-creators.com/archives/1662#.svg http://www-creators.com/archives/1662
.gitignoreの概要
.gitignore とは、Git による追跡対象としないファイルを指定するための設定ファイル
あるディレクトリ配下を Git 管理対象としたとしても、その中のすべてのファイルを Git で管理したいとは限りません
.gitignore の書き方。ファイル/ディレクトリの除外と反映方法 | WWWクリエイターズ
これがどんなシーンなのか想像できないけど、とりあえず勉強していくtkgshn.icontkgshn.icon*3
.DS_StoreをGitに追加しないためにも使われることが多いらしい
.gitignoreの仕様
.gitignoreファイル内に記載されることにより、(何を記載するんだろうtkgshn.icon)インデックスに追加されないようになる
関連:git addで安易にディレクトリやワイルドカードを指定しない
記載された時点で「Git の追跡対象から除外される」のではなく「まだ追跡されていないファイルが指定されていれば、git addの実行時にも、追跡開始しないようになる」
つまり、後から追加してもあんまり意味ないという感じなのかなtkgshn.icon
一度 git addを経験したファイルはインデックスに追加されている(Gitの追跡対象)
後から新しく .gitignoreに追加してもコミットに更新内容は含まれ続ける
.gitignore による除外設定
Gitの追跡対象から除外する場合、インデックスからファイルを削除する必要がある
$ git rm -cached ファイル名
インデックス領域を示すオプション「--cached」をつけることで、作業ツリーのファイル実体はそのままで、インデックスからのみファイルを削除できます。
この --cachedオプションなしで実行すれば「git rm」は作業ツリー上のファイルの実体と、インデックスの両方を削除します。
単純にgit rm [ファイル名]をするだけでは、ファイルそのもの・インデックスの両方が消えてしまう
作業ログ(git)はそのまま、ファイルのみを削除したい場合は、rm [ファイル名]で出来る
--cachedをつけることで、gitの追跡のみを削除することができる
/icons/hr.icon
.gitignoreを書く
各行に、ファイルをマッチするための「パターン」を記述する
shellでのパスの指定方法と似ているけど少し異なる点がある
.gitignoreのような、ファイル名の先頭に.がついているものを隠しファイルという
隠しファイルの表示方法
code:.gitignore(example)
.DS_Store
node_modules
/dist
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
.env
特定のファイルを除外する
記述する際の行頭に/があれば、基準の位置が異なる
# どのディレクトリかを問わず、file.phpを除外
file-a.php
# .gitignore が置かれたディレクトリ内のfile.phpを除外
/file-a.php