Created by potrace 1.16, written by Peter Selinger 2001-2019

Miva Developer Docs


MMT prints errors as <code>: <message> and exits with status 1. For more detail on what was sent and received, run the command again with --debug before it, for example mmt --debug pull. Debug output includes your API token, so don’t share it as is.

Connecting and signing in#

Message Cause and fix
access_denied: BranchList_Load_Query: Access denied (or another function) The store rejected the token or SSH key. Check that the token is enabled, your IP address is on its list, it has a signing key, and it has permission for the function named. See Set up credentials.
MMT-COMMAND-00015: Missing HTTP Basic Authentication credentials The store is behind HTTP basic authentication. Add a login to the credential with mmt credential update -m <user> <credential>.
MMT-COMMAND-00015: Invalid HTTP Basic Authentication credentials The HTTP basic authentication login is wrong. Update it with -m and -w.
MMT-COMMAND-00002: <Function>: ... MMT couldn’t reach the store or read its response. Check the credential’s URL (it should end in json.mvc) and your connection.
MMT-COMMAND-00008: Incorrect private key password The SSH key’s passphrase was entered wrong three times.
MMT-COMMAND-00014: SSH private key '<path>' does not exist The private key was moved or deleted. Update the credential with -k.
A Python error mentioning the key format The SSH key isn’t an RSA key. Create one with ssh-keygen -t rsa -m pem.

Credentials and remotes#

Message Cause and fix
MMT-COMMAND-CREDENTIALS-00004: An API Signing Key value is required MMT needs the token’s signing key. Turn on the signature setting for the token and add the key with -s.
MMT-COMMAND-CREDENTIALS-00012 / -00013 Give either token options (-t, -s) or SSH options (-n, -k), not neither or both.
MMT-COMMAND-00010: Remote key '<key>' does not exist The checkout’s remote was renamed or deleted. Run mmt switch <new remote> in the checkout.
MMT-COMMAND-00011: Credential key '<key>' does not exist The remote’s credential was renamed or deleted. Run mmt remote update -c <credential> <remote>.

Checkouts#

Message Cause and fix
MMT-COMMAND-00001: MMT has not been configured for path '.' You’re not in a checkout’s top folder. cd into the folder that contains .mmt, or check out first.
MMT-COMMAND-CHECKOUT-00009: Branch '<name>' does not exist The remote’s branch name doesn’t match a branch on the store. Check with mmt branch list; names must match exactly.
MMT-COMMAND-CHECKOUT-00010: Changeset N does not exist The changeset number given with -c isn’t on that branch. See mmt log.
MMT-METADATA-00001: Failed to parse '<file>' A file in .mmt or ~/.mmt was edited and is no longer valid JSON. For a checkout, run mmt checkout --reinitialize <remote> . to rebuild it.

Pushing and pulling#

Message Cause and fix
No files to commit Nothing changed since the last checkout, pull or push, or the files you named aren’t tracked. Files you create yourself are never pushed.
MMT-COMMAND-PUSH-00001: Either the --notes parameter must be specified or the 'editor' configuration setting must be set Add -n "notes", or set an editor.
MMT-COMMAND-PUSH-00003: Failed to parse JSON in '<file>' A settings .json file has a syntax error. Fix it and push again.
MMT-COMMAND-PULL-00001: Update failed as the following files contain local modifications You asked to pull files you’ve changed. Push or revert them first, or add --force to replace them.
MMT-COMMAND-PULL-00004: Update failed as the following files are out-of-sync with the server and contain local modifications Someone else changed files you’ve also changed. See Why pull comes first.
MMT-COMMAND-DIFF-00001: The 'diff' configuration setting must be set Set a diff tool.
MMT-COMMAND-REVERT-00001 Name the files to revert, or use --all.
MMT-COMMAND-SRI-00002: File '<file>' is not a local resource mmt sri works only on Local JS and CSS files (.js, .css).

Other problems#

  • mmt isn’t found after installing. Add Python’s user scripts folder to your PATH. See Install MMT.
  • A file shows as modified but you didn’t change it. Your editor may have changed line endings or the encoding. mmt diff shows the difference.
  • Push overwrote someone’s change. Push doesn’t check for conflicts. Pull before every push.