.gitignoreについて
https://ricapitolare.vercel.app/svg?url=http://www-creators.com/archives/1662#.svg http://www-creators.com/archives/1662
.gitignoreの概要
あるディレクトリ配下を Git 管理対象としたとしても、その中のすべてのファイルを Git で管理したいとは限りません
これがどんなシーンなのか想像できないけど、とりあえず勉強していくtkgshn.icontkgshn.icon*3
.gitignoreの仕様
.gitignoreファイル内に記載されることにより、(何を記載するんだろうtkgshn.icon)インデックスに追加されないようになる
記載された時点で「Git の追跡対象から除外される」のではなく「まだ追跡されていないファイルが指定されていれば、git addの実行時にも、追跡開始しないようになる」
つまり、後から追加してもあんまり意味ないという感じなのかなtkgshn.icon
一度 git addを経験したファイルはインデックスに追加されている(Gitの追跡対象) .gitignore による除外設定
Gitの追跡対象から除外する場合、インデックスからファイルを削除する必要がある
インデックス領域を示すオプション「--cached」をつけることで、作業ツリーのファイル実体はそのままで、インデックスからのみファイルを削除できます。
この --cachedオプションなしで実行すれば「git rm」は作業ツリー上のファイルの実体と、インデックスの両方を削除します。
単純にgit rm [ファイル名]をするだけでは、ファイルそのもの・インデックスの両方が消えてしまう
作業ログ(git)はそのまま、ファイルのみを削除したい場合は、rm [ファイル名]で出来る
--cachedをつけることで、gitの追跡のみを削除することができる
/icons/hr.icon
.gitignoreを書く
各行に、ファイルをマッチするための「パターン」を記述する
shellでのパスの指定方法と似ているけど少し異なる点がある 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