ENVSETUP -------- For one of my projects I decided to make a top level helper script, similar to how the Android Open Source Project (AOSP) exports functions for develoeprs. Eventually I decided this should be more general and made this git, so I can easily make new projects with it :-). This is intended for projects written in C, C++, or Java. It is meant to be run form the command line on a Unix or Windows NT based system. Bash and cmd.exe are supported as shells. It does not have to be an Android project. It can be anything. YOUR PROJECT ============ Add envsetup as a submodule of the same name to your Git. Or just download from git an extract the same way. envsetup\ .cmd envsetup.sh envsetup.cmd At present the following build tools are supported: make gradle You may wish to include these in your .gitignore or equivalent: envsetup.local.sh envsetup.local.cmd To get stuff going in your development shell: source the .sh in bash or run the .cmd in cmd.exe. $ . ./envsetup/envsetup.sh E:\proj> .\envsetup\envsetup.cmd Create envsetup.project.{sh,cmd} files with project local stuff you want to share among developers. Check those in. Edit the created envsetup.local.{sh,cmd} files with local stuff for your tree. Use that for your specific machine. On Windows you may place executable files and stuff in %PROJECT_ROOT%\.cmd; it will be injected into your %Path% along with envsetup\.cmd. On UNIX based systems, well you know how to write shell functions don't you? There is also the ./.cmd directory if you wish to add that to your $PATH via envsetup.local.sh.