Drupal’s default .gitignore
file contains only a few basic pieces of
information, and is usually located in your website’s
docroot directory. Websites hosted on
Cloud Platform can make significant changes to this file, and by
changing the .gitignore
file, you can prevent your repository from
bloat, by preventing storage of images or other large data items.
Important
Cloud Platform-hosted websites have a different .gitignore
file than the
default Drupal version. Since Drupal core upgrades can overwrite this
file, be sure to back up your .gitignore
file. When the custom file is
overwritten by Drupal core, your Git repository
can gain or lose information, which can be a risk for data loss or a
potential security issue.
.gitignore
file differences, by Drupal version
The contents of your website’s .gitignore
file depend on the version
of Drupal you have installed.
Current Drupal version
You can modify the .gitignore
file of your application running
the current Drupal version to
ignore the settings.php
file. This allows you to update the
standard settings.php
file with the Drupal local settings file checker:
/**
* Load local development override configuration, if existent.
*
* Use settings.local.php to override variables on secondary (staging,
* development, etc) installations of this site. Typically used to disable
* caching, JavaScript/CSS compression, re-routing of outgoing e-mails, and
* other things that should not happen on development and testing sites.
*
* Keep this code block at the end of this file to take full effect.
*/
if (file_exists(DRUPAL_ROOT . '/' . $conf_path . '/settings.local.php')) {
include DRUPAL_ROOT . '/' . $conf_path . '/settings.local.php';
}
Drupal 7
The Drupal 7 default .gitignore
file on Cloud Platform appears similar to
the following:
# Ignore paths that contain user-generated content.
sites/*/files
sites/*/private
Drupal 7’s default file includes a line to ignore any settings*.php
files
in the docroot
directory. Since many websites commit their settings files
to Git as part of their workflow, this addition was problematic and
is not present in the current Drupal version.
Excluding additional files
As an example, if you don’t want to commit the default text files to
Git, add the following lines to your .gitignore
file:
# Ignore default text files
/CHANGELOG.txt
/COPYRIGHT.txt
/INSTALL*.txt
/LICENSE.txt
/MAINTAINERS.txt
/UPGRADE.txt
/README.txt
sites/all/README.txt
sites/all/modules/README.txt
sites/all/themes/README.txt
You can also add additional paths that contain user-generated content, including the same paths that are part of the default file. This can include image files, documents, or other items that should not be placed in the repository.
# Ignore paths that contain user-generated content.
cache/
files/
sites/*/files
sites/*/private
sites/*/files-private
Note
If you are not sure where your website’s private files section is, see Setting the private file directory on Cloud Platform.
Cloud Platform users may have an acquia-files
directory, which should be
added to your .gitignore
file.
Further additions can make sense in the Cloud Platform environment, but you should consider each change carefully to ensure that any changed files that are part of your codebase get backed up.