在我的基于GIT的项目中,我需要设置构建脚本和许多其他蚂蚁目标所需的几个环境变量。
现在我有一个将导出变量的shell脚本,但每次用户打开一个新的bash窗口时,他都需要通过执行shell脚本重复这些步骤来设置环境变量。
这些变量中的大多数都是用户机器/环境依赖的,这些变量在导出之前由shell动态评估。
如果有办法让它变得更有活力。我知道GIT提供了钩子,一种可能性是当用户签出分支时我可以使用hook来调用shell。
但是GIT仍然坚持当前的工作分支,如果用户进入新的bash窗口,他将继续在之前选择的分支中,他可能不会调用git checkout分支,并且最终不会调用env变量shell。 / p>
那么处理这件事最好的是什么?
答案 0 :(得分:1)
我通常会修改用户用于启动构建的构建包装器脚本(在当前或新的shell窗口中)
这样,环境变量始终在每次构建时设置。
此外,通过对build.sh/build.bat包装脚本进行版本控制,您可以了解项目所需的选项/环境变量,以便构建。
该包装脚本如果已更改,则会进行版本控制并可以进行审核(git blame
):您知道是谁更改了内容和时间。