diff --git a/Drupal.gitignore b/Drupal.gitignore index faae8083..c2eaa012 100644 --- a/Drupal.gitignore +++ b/Drupal.gitignore @@ -1,62 +1,129 @@ -# gitignore template for Drupal 8 projects +# gitignore template for Drupal 10+ projects # # earlier versions of Drupal are tracked in `community/PHP/` # # follows official upstream conventions: # https://www.drupal.org/docs/develop/using-composer -# Ignore configuration files that may contain sensitive information -/web/sites/*/*settings*.php -/web/sites/*/*services*.yml +# This file contains .gitignore rules that are specific to the structure of the +# Drupal recommended-project Composer template. Because .gitignore is specific +# to your site and its deployment processes, you may need to uncomment, add, or +# remove rules. -# Ignore paths that may contain user-generated content + +# Ignore configuration files that may contain sensitive information. +# +# Typically, settings.php and related files are not committed to the +# repository because they contain information such as the database +# credentials that could be used to compromise a site. Sometimes, +# a settings.php might be committed to the repository if it reads +# sensitive information from environment variables or other sources. +# ------------------------------------------------------------------ +/web/sites/*/settings*.php +/web/sites/*/services*.yml + +# Ignore paths that contain user-generated content. /web/sites/*/files -/web/sites/*/public /web/sites/*/private -/web/sites/*/files-public -/web/sites/*/files-private -# Ignore paths that may contain temporary files -/web/sites/*/translations -/web/sites/*/tmp -/web/sites/*/cache +# Ignore SimpleTest multi-site environment. +/web/sites/simpletest -# Ignore drupal core (if not versioning drupal sources) -/web/vendor -/web/core -/web/modules/README.txt -/web/profiles/README.txt -/web/sites/development.services.yml -/web/sites/example.settings.local.php -/web/sites/example.sites.php -/web/sites/README.txt -/web/themes/README.txt +# Ignore custom modules managed by Composer. +# +# When a development team creates one or more custom modules that +# are intended for use on more than one site, the typical strategy +# is to register them in Packagist and give them the type +# `drupal-custom-module` instead of `drupal-module`. This will cause +# Composer to install them to the directory `modules/custom`. +# This will cause a build error on Pantheon unless this location +# is .gitignore'd as shown below. +# +# An alternate strategy for custom modules is to commit them +# directly to the repository of the site where they are used. This +# is commonly done with modules that are specific to just one site. +# +# Sites that have both Composer-managed custom modules and custom +# modules that are committed directly to the repository may ignore +# the `modules/custom` directory with the first rule shown below, +# and then allow the locations to be committed on a case-by-case +# basis by re-adding paths using `!` rules. A path that begins with +# a `!` will allow a previously-ignored path to be added to the +# repository. Note, however, that a path cannot be re-added if any +# of its parent directories are excluded. This is why we use the +# rule `/modules/custom/*` instead of `/modules/custom`. Alternately, +# you might instead commit Git-tracked custom modules to some other +# path, such as /web/modules/. +# +# Sites that do not have any Composer-managed custom modules do +# not need to use any of the `modules/custom` rules below. +# ------------------------------------------------------------------ +#/web/modules/custom/* +#!/web/modules/custom/module_in_repo + +# Ignore directories generated by Composer +# +# See the "installer-paths" section in the top-level composer.json +# file. +# ------------------------------------------------------------------ +/drush/Commands/contrib/ +/web/composer/ +/web/core/ +/web/modules/contrib/ +/web/themes/contrib/ +/web/profiles/contrib/ +/web/libraries/ + +# Generally you should only ignore the root vendor directory. It's important +# that core/assets/vendor and any other vendor directories within contrib or +# custom module, theme, etc., are not ignored unless you purposely do so. +/vendor/ + +# Ignore scaffold files +# +# Note that the scaffold plugin may be used to automatically manage +# a site's .gitignore files. If the `vendor` directory is ignored, +# then one or more .gitignore files will be written to also ignore +# any file placed by scaffolding. To avoid the creation of +# additional .gitignore files, add all of the scaffold file +# locations to the top-level .gitignore file, as shown below. +# ------------------------------------------------------------------ +/.editorconfig +/.gitattributes /web/.csslintrc -/web/.editorconfig /web/.eslintignore /web/.eslintrc.json -/web/.gitattributes -/web/.htaccess /web/.ht.router.php +/web/.htaccess +/web/INSTALL.txt +/web/README.md /web/autoload.php -/web/composer.json -/web/composer.lock /web/example.gitignore /web/index.php -/web/INSTALL.txt -/web/LICENSE.txt -/web/README.txt /web/robots.txt /web/update.php /web/web.config +/web/modules/README.txt +/web/profiles/README.txt +/web/sites/README.txt +/web/sites/default/default.services.yml +/web/sites/default/default.settings.php +/web/sites/development.services.yml +/web/sites/example.settings.local.php +/web/sites/example.sites.php +/web/themes/README.txt -# Ignore vendor dependencies and scripts -/vendor -/composer.phar -/composer -/robo.phar -/robo -/drush.phar -/drush -/drupal.phar -/drupal + +# Other common rules +# ------------------ +# Ignore files generated by PhpStorm and VSCode +/.idea/ +/.vscode/ + +# Ignore files generated by ddev and lando +/.ddev/ +/.lando/ +/.lando.yml + +# Ignore .env files as they are personal +/.env diff --git a/community/PHP/Drupal8.gitignore b/community/PHP/Drupal8.gitignore new file mode 100644 index 00000000..faae8083 --- /dev/null +++ b/community/PHP/Drupal8.gitignore @@ -0,0 +1,62 @@ +# gitignore template for Drupal 8 projects +# +# earlier versions of Drupal are tracked in `community/PHP/` +# +# follows official upstream conventions: +# https://www.drupal.org/docs/develop/using-composer + +# Ignore configuration files that may contain sensitive information +/web/sites/*/*settings*.php +/web/sites/*/*services*.yml + +# Ignore paths that may contain user-generated content +/web/sites/*/files +/web/sites/*/public +/web/sites/*/private +/web/sites/*/files-public +/web/sites/*/files-private + +# Ignore paths that may contain temporary files +/web/sites/*/translations +/web/sites/*/tmp +/web/sites/*/cache + +# Ignore drupal core (if not versioning drupal sources) +/web/vendor +/web/core +/web/modules/README.txt +/web/profiles/README.txt +/web/sites/development.services.yml +/web/sites/example.settings.local.php +/web/sites/example.sites.php +/web/sites/README.txt +/web/themes/README.txt +/web/.csslintrc +/web/.editorconfig +/web/.eslintignore +/web/.eslintrc.json +/web/.gitattributes +/web/.htaccess +/web/.ht.router.php +/web/autoload.php +/web/composer.json +/web/composer.lock +/web/example.gitignore +/web/index.php +/web/INSTALL.txt +/web/LICENSE.txt +/web/README.txt +/web/robots.txt +/web/update.php +/web/web.config + +# Ignore vendor dependencies and scripts +/vendor +/composer.phar +/composer +/robo.phar +/robo +/drush.phar +/drush +/drupal.phar +/drupal