NAME

git-watch - Watch for changes in repository up-stream

VERSION

This documentation refers to git-watch version 1.1.12

SYNOPSIS

  git-watch show [-1|--once] [(-f|--file) file ...]
  git-watch [do] [-1|--once] [(-f|--file) file ...] [--] cmd

SUB-COMMAND
 show          Simply show when a file
 do            Execute a shell script cmd when a change occurs

OPTIONS:
 -1 --once     Run once then exit
 -R --runs[=]int
               Run at most this number of times.
 -p --pull     Before checking if anything has changed do a git pull to the
               current branch. (see notes below)
 -P --pull-options[=]flags
               When using --pull add these options to the pull command.
 -f --file[=]regex
               Watch file any files changing that match "regex"
 -b --branch[=]regex
               Watch for any changes to branches matching "regex"
               by default looks only at local branches
 -r --remote   With --branch only look at remote branches
 -a --all      With --branch look at all branches (local and remote)
 -m --max[=]int
               Look only --max changes back in history to see what is
               happening (Default 10)
 -s --sleep[=]int
               Sleep time between fetches (devault 60s)
 -q --quiet    Suppress notifying of what files and branches have changed
 -v --verbose  Show more detailes
    --version  Prints the version information
    --help     Prints this help information
    --man      Prints the full documentation for git-watch

DESCRIPTION

The git-watch command allows you to run a command when something changes. The simple option is show which just shows what has changed when it changes and nothing else, this is useful for seeing what is happening in the repository. The the do sub-command actually runs a script every time a change is detected.

show

The output of show is changed with the --quiet and --verbose options to show more or less information.

do

When the do sub-command runs it sets the environment variables $WATCH_SHA, $WATCH_FILES and $WATCH_BRANCHES with the latest commit SHA, the files that have changed and the branches that have changed respectively. The files and branches are comma separated for your command to inspect.

A simple example:

git watch 'echo $WATCH_FILES'

This would just echo the files that have changed with each change.

Notes

If trying to watch a branch that is connected to a remote branch the --pull isn't currently working as expected. The workaround is to watch the remote branch and do the pull your self. eg

$ git watch do -rb origin/master -- 'git pull --ff -r; your-command'

SUBROUTINES/METHODS

run ()

Executes the git workflow command

git_state ()

found ()

changes ()

spin ()

Helper providing access to Term::Spinner if installed

DIAGNOSTICS

CONFIGURATION AND ENVIRONMENT

DEPENDENCIES

INCOMPATIBILITIES

BUGS AND LIMITATIONS

There are no known bugs in this module.

Please report problems to Ivan Wills (ivan.wills@gmail.com).

Patches are welcome.

AUTHOR

Ivan Wills - (ivan.wills@gmail.com)

LICENSE AND COPYRIGHT

Copyright (c) 2014 Ivan Wills (14 Mullion Close, Hornsby Heights, NSW Australia 2077). All rights reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.