forall: Clarify expansion of REPO_ environment values with -c

If a user executes:

  repo forall -c echo $REPO_PROJECT

then $REPO_NAME is expanded by the user's shell first, and passed
as $1 to the shell that executes echo. This will either result in
no output, or output of whatever REPO_NAME is set to in the user's
shell. Either way, this is an unexpected result.

The correct way to do it is:

  repo forall -c 'echo $REPO_PROJECT'

such that $REPO_NAME is passed in to the shell literally, and then
expanded to the value set in the environment that was passed to
the shell.

Update the documentation to make this clearer.

Change-Id: I713caee914172ad8d8f0fafacd27026502436f0d
1 file changed
tree: b0865343f7fa5702bf16c7662852b45f6119c084
  1. .flake8
  2. .gitattributes
  3. .gitignore
  4. .mailmap
  5. .project
  6. .pydevproject
  7. COPYING
  8. README.md
  9. SUBMITTING_PATCHES.md
  10. color.py
  11. command.py
  12. docs/
  13. editor.py
  14. error.py
  15. event_log.py
  16. git_command.py
  17. git_config.py
  18. git_refs.py
  19. git_ssh
  20. gitc_utils.py
  21. hooks/
  22. main.py
  23. manifest_xml.py
  24. pager.py
  25. platform_utils.py
  26. platform_utils_win32.py
  27. progress.py
  28. project.py
  29. pyversion.py
  30. repo
  31. subcmds/
  32. tests/
  33. trace.py
  34. wrapper.py
README.md

repo

Repo is a tool built on top of Git. Repo helps manage many Git repositories, does the uploads to revision control systems, and automates parts of the development workflow. Repo is not meant to replace Git, only to make it easier to work with Git. The repo command is an executable Python script that you can put anywhere in your path.