それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

git でディレクトリを管理対象から外す

git に登録したディレクトリで不要になった ものや、実は管理対象じゃなかったものを外すには

フォルダを消すコマンド

git rm -r --cached /path/to/dir/

フォルダを誤って含めた場合、本当は歴史を書き換えるんだろうけど、そこまではやらなくていい場合。これくらいで十分じゃないでしょうか。

この場合「削除されたこと」が 「deleted」として記録されます。

やってみた

git rm -r --cached  ./vendor

 消したことが記録されます。

On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

    deleted:    vendor/autoload.php
    deleted:    vendor/composer/ClassLoader.php
    deleted:    vendor/composer/autoload_classmap.php
    deleted:    vendor/composer/autoload_namespaces.php
    deleted:    vendor/composer/autoload_psr4.php
    deleted:    vendor/composer/autoload_real.php
    deleted:    vendor/composer/installed.json

こんなかんじね。

git追跡対象から外したものは、.gitignore が必要でしょうね。

--cached を付けない場合

git rm -r  /path/to/dir

このばあい、レポジトリの今の作業からフォルダも削除されます。

そもそも不要だったフォルダやファイルを登録した場合は歴史を書き換えた方がいいんでしょうね。

2019-09-28

fix typo