diff --git a/docs/tools/buildkit.md b/docs/tools/buildkit.md index ad733232128759cf568bcbfd745c2ca8ded62f34..61678c1d5e6f455544d02821b1c307e27600167b 100644 --- a/docs/tools/buildkit.md +++ b/docs/tools/buildkit.md @@ -80,7 +80,7 @@ npm install fs-extra ``` -## Configuring buildkit after installation +## Configuring buildkit after installation {:#configuring} !!! note "Not needed for Vagrant/Docker installations" If you set up buildkit using Vagrant or Docker, then you don't need to perform the configuration steps listed here. @@ -120,7 +120,7 @@ If you want to ensure that the buildkit CLI tools are always available, then: -## Upgrading buildkit +## Upgrading buildkit {:#upgrading} New versions of buildkit are likely to include new versions of tools. The new tools will download automatically when you first run `civibuild`. diff --git a/docs/tools/civibuild.md b/docs/tools/civibuild.md index 0a5503d2f3792abd8a0257e4a19d15824e55bd6b..f2e41ef5e26a8069c3db1904b0a3fccdd2d479c8 100644 --- a/docs/tools/civibuild.md +++ b/docs/tools/civibuild.md @@ -21,7 +21,7 @@ these. Unfortunately, such tools generally require extra work for a Civi developer environment. Civibuild works with these tools and and fills in missing parts. -## Your First Build +## Your First Build {:#start} !!! tip Login as a non-`root` user who has `sudo` permission. This will ensure that new files are owned by a regular user, and (if necessary) it enables `civibuild` to restart Apache or edit `/etc/hosts`. @@ -148,7 +148,7 @@ These aliases exactly match the demo sites deployed under civicrm.org (e.g. If you have a working civibuild site and you'd like to upgrade CiviCRM to the latest version, follow these steps: -### Begin in the civicrm directory within your site {:#upgrade-begin} +### Begin in the civicrm directory within your site {:#upgrade-site-begin} ``` cd ~/buildkit/build/dmaster/sites/all/modules/civicrm/ @@ -157,7 +157,7 @@ cd ~/buildkit/build/dmaster/sites/all/modules/civicrm/ !!! note The path to this directory will vary depending on where you installed buildkit and what CMS you site uses. -### Check the status of all git repos {:#upgrade-git-scan} +### Check the status of all git repos {:#upgrade-site-git-scan} There are multiple git repos in your build (`civicrm-core.git`, `civicrm-packages.git`, etal). Before making a major switch, first double-check that all of these repos are in sane condition — i.e. there shouldn't be any uncommitted changes, and the repos should be on normal branches. For this purpose, use [git-scan](https://github.com/totten/git-scan), (installed with [buildkit](/tools/buildkit)). @@ -169,7 +169,7 @@ git scan status If you see a message like *"Fast-forwards are not possible"* or *"Modifications have not been committed"*, then you'll need to clean up these git repositories before proceeding. -### Update the git repos +### Update the git repos {:#upgrade-site-git-scan-up} To update to the latest version of a particular branch, use `git scan up` which will perform a standard "fast-forward merge" (`git pull --ff-only`) across all the repos: @@ -186,7 +186,7 @@ Alternatively, if you'd like to hop to a specific tag, you can use `givi` (a too givi checkout 4.7.17 ``` -### Update the generated code, config files, databases +### Update the generated code, config files, databases {:#upgrade-site-update} Reinstalling will recreate/overwrite all generated-code, config-files, and database content. Any data you put into your site (e.g. test contacts, etc) will be lost. @@ -202,7 +202,7 @@ drush civicrm-upgrade-db ``` -## Downgrading a site you installed with civibuild +## Downgrading a site you installed with civibuild {:#downgrade-site} If you are [reviewing a pull request](/core/pr-review) you may wish to *downgrade* a civibuild site in order to begin replicating the issue and testing the fix. Currently this is **not possible** with civibuild, so instead you will need to do a [rebuild](#rebuild) with the the `--civi-ver` argument to specify your target version of CiviCRM. @@ -260,7 +260,7 @@ There are four variations on rebuilding. In order of fastest (least thorough) to </tbody> </table> -## civicrm.settings.php; settings.php; wp-config.php +## civicrm.settings.php; settings.php; wp-config.php {:#settings} There are a few CiviCRM settings which are commonly configured on a per-server or per-workstation basis. For example, civicrm.org's demo server has ~10 @@ -285,7 +285,7 @@ A parallel structure exists for the CMS settings files. See also: * `/app/drupal.settings.d/README.txt` * `/app/wp-config.d/README.txt` -## Development/Testing of `civibuild` +## Development/Testing of `civibuild` {:#development} The tests for `civibuild` are stored in `tests/phpunit`. These are integration tests which create and destroy real builds on the local system. @@ -299,7 +299,7 @@ To run them: * `OFFLINE=1` - Try to avoid unnecessary network traffic -## Experimental: Multiple demo/training sites +## Experimental: Multiple demo/training sites {:#demo-training} When creating a batch of identical sites for training or demonstrations, one may want to create a single source-code-build with several diff --git a/docs/tools/index.md b/docs/tools/index.md index 46fa40be408cb3f6758fc5c1ecc5a62f7e3784a1..c04dae279c7707fed27ae8b80ea6870942228895 100644 --- a/docs/tools/index.md +++ b/docs/tools/index.md @@ -1,8 +1,12 @@ # Development tools -## CiviCRM-specific tools +## Tools included with buildkit {:#with-buildkit} -All of these tools come bundled within [buildkit](/buildkit). +When you install [buildkit](/buildkit) you'll get all these tools. + +*This list of tools is also maintained [in the buildkit readme file](https://github.com/civicrm/civicrm-buildkit/blob/master/README.md).* + +### CiviCRM-specific tools {:#civicrm-specific} * `civibuild` - Build a complete source tree (with CMS+Civi+addons), provision httpd/sql, etc. * *[documentation](/tools/civibuild.md)* @@ -35,11 +39,9 @@ All of these tools come bundled within [buildkit](/buildkit). * *(Derived from [Drupal's coder project](https://www.drupal.org/project/coder))* -## External tools installed with buildkit - -These tools are not specific to CiviCRM, so you may already have some of them installed on your system. +### External tools installed with buildkit {:#external} -If you install [buildkit](/buildkit) you'll get all these tools at once, in addition to the CiviCRM-specific tools listed above. +These tools are not specific to CiviCRM, so you may already have some of them installed on your system. If you install [buildkit](/buildkit) you'll get all these tools at once, in addition to the CiviCRM-specific tools listed above. * Dependency management * [composer](http://getcomposer.org/) - Manage dependencies for PHP code. @@ -60,7 +62,14 @@ If you install [buildkit](/buildkit) you'll get all these tools at once, in addi * [paratest](https://github.com/brianium/paratest) - Parallelized version of PHPUnit. * [phpunit](http://phpunit.de/) - Unit testing for PHP (with Selenium and DB add-ons). -## Other useful tools +## Other useful tools {:#other} + +### Miscellaneous {:#misc} + +* [git](https://git-scm.com/) - version control system +* [psysh](http://psysh.org/) - a reply-echo-print-loop for PHP (like `php -a`, but better) +* [MySQL Workbench](https://www.mysql.com/products/workbench/) - A graphical interface to your local (or remote) MySQL server +* [MkDocs](http://www.mkdocs.org) - for [editing documentation](/documentation) ### Text editors @@ -71,3 +80,4 @@ If you already have a text editor you love, then stick to that. If you're new an * [Sublime](https://www.sublimetext.com/) * [Atom](https://atom.io/) * [vim](http://www.vim.org/) +