Tips and tricks

This page trying to provide some info on effective usage of scmproj.

Contents

Useful aliases

With scmproj 0.5.1 (or later) you can define and use several useful aliases to make your work more comfortable.

To define an alias use command as following:

bzr alias NAME="cmd ..."

Where NAME is alias name, "cmd ..." actual bzr command with options and/or arguments.

To see all defined aliases use just bzr alias.

Most of the command-aliases should be simply invoked in the local copy of the project, as bzr NAME (e.g. bzr pst), if not specified otherwise.

pst

Alias:"project-command --changed status"
Description:Shows the status of all components in the project where changed or unknown files, or pending merges are present.

pdi

Alias:"project-command --changed diff"
Description:Shows the diff for all components in the project where changed or unknown files, or pending merges are present.

ptip

Alias:"project-command 'log -r-1 --line'"
Description:Shows the log for the last committed revision: revision number, author and message as one line. Useful to get quick overview of the components histories.

psnaptip

Alias:"project-command 'log -r {REVISION} --line'"
Description:Shows the log for the last snapshotted revision: revision number, author and message as one line. Useful to get info about last snapshot of the components.

pnew

Alias:"project-command 'log -r {REVISION}..-1 --line'"
Description:Shows the log for the last snapshotted revision plus all revisions committed after that. Useful to check whether you should execute project-commit to update snapshot.

pmiss

Alias:"project-command --different-tips 'missing --line {BRANCH_URL}'"
Description:Shows the revisions different between local component branch and origin component branch (specified in project.cfg).

pcompare

Alias:"project-command 'missing --line {var1}/{RELPATH}'"
Description:Shows the revisions different between 2 local projects.
Usage:bzr pcompare --var1 /path/to/other/project
Note:Command should be executed from first project tree and pass absolute path to the second project as --var1 /path/to/other/project.