Acquia CMS Split Command - acquia/acquia_cms GitHub Wiki

Overview

Acquia CMS Split script is build using the script: splitsh/lite script.

This script is used to push code for all Acquia CMS modules/themes to their individual Acquia CMS module/theme repository.

When the script is executed, this will pull the latest code from the current checked out branch/tag, traverse through the commits of Acquia CMS module/theme and then push this traversed commits to their individual Acquia CMS module/theme repository.

Usage

Script can be executed passing different option to the command. Ex:

  1. ./acms-split.sh --branch=develop: This will push code to develop branch on all sub-module repository.

  2. ./acms-split.sh --branch=develop --force: The above command might give error sometime, when pushed branch tip is behind its remote branch. To fix this, use --force option with the command, as this will force push the commits on remote repository.

  3. ./acms-split.sh --tag=v1.2.5: This will create the tag: v1.2.5 on all sub-module remote repository.

  4. ./acms-split.sh --tag=v1.2.5 --delete: This will delete the tag: v1.2.5 (if exists) and then create the tag: v1.2.5 on all sub-module remote repository. (If you want to delete the branch and re-create branch instead, then use --branch option instead of --tag).

  5. ./acms-split.sh --branch=develop --dry-run: This will dry-run the command on remote repository to check if you are able to create branch/tag and push code to all sub-module repository. This will not push the code on remote repository. It can be used to check for any errors before actually pushing the code.

  6. ./acms-split.sh --branch=develop --push=drupal: This will push all sub-modules code to given remote repositories. Following are the valid option values:

    • --push=drupal: This will push all sub-modules code to Drupal remote repositories.
    • --push=acquia: This will push all sub-modules code to Acquia remote repositories.
    • --push=acquia, drupal: This will push all sub-modules code to Drupal & Acquia remote repositories.

    acquia is the default option value. When --push option is not passed.

  7. ./acms_split.sh: This can be used to display command usage/example.