docs: repo-hooks: fix cwd details

The hooks are run from the top of the manifest checkout, not from the
individual git repos.  It's up to individual hooks to chdir as needed.

Change-Id: I53325e0c3dcaa9c250b02b223e78d238d2cbd36d
This commit is contained in:
Mike Frysinger 2018-03-20 20:00:14 -04:00
parent cf7c0834cf
commit ed429c9f6f

View File

@ -61,9 +61,14 @@ not be too verbose. A short summary is nice, and some status information when
long running operations occur, but long/verbose output should be used only if long running operations occur, but long/verbose output should be used only if
the hook ultimately fails. the hook ultimately fails.
The hook runs from the top level of the git repo where the operation is started. The hook runs from the top level of the repo client where the operation is
e.g. If you're in the git repo `src/foo/`, that is where the hook runs, even if started.
the `repo` command was started from a subdir like `src/foo/bar/`. For example, if the repo client is under `~/tree/`, then that is where the hook
runs, even if you ran repo in a git repository at `~/tree/src/foo/`, or in a
subdirectory of that git repository in `~/tree/src/foo/bar/`.
Hooks frequently start off by doing a `os.chdir` to the specific project they're
called on (see below) and then changing back to the original dir when they're
finished.
Python's `sys.path` is modified so that the top of repohooks directory comes Python's `sys.path` is modified so that the top of repohooks directory comes
first. This should help simplify the hook logic to easily allow importing of first. This should help simplify the hook logic to easily allow importing of