linux - git : Setting application environmental variables

标签 linux git unix github environment-variables

在我基于 GIT 的项目中,我需要设置构建脚本和许多其他 ant 目标所需的几个环境变量。

现在我有一个可以导出变量的 shell 脚本,但是每次用户打开一个新的 bash 窗口时,他都需要通过执行 shell 脚本来重复这些步骤以设置环境变量。

这些变量中的大多数都依赖于用户机器/环境,并且在导出之前由 shell 动态评估这些变量。

如果有办法让它更有活力。我知道 GIT 提供了钩子(Hook),一种可能性是我可以在用户 checkout 到分支时使用钩子(Hook)调用 shell。

但是 GIT 再次保留当前工作分支,如果用户转到新的 bash 窗口,他将继续在先前选择的分支中,他可能不会调用 git checkout 分支,最终也不会调用 env 变量 shell。

那么最好的处理方法是什么?

最佳答案

我通常对用户用于启动构建的构建包装脚本进行版本控制(在当前或新的 shell 窗口中)

这样,环境变量总是在每次构建时设置。

此外,通过对 build.sh/build.bat 包装器脚本进行版本控制,您可以了解构建项目需要哪些选项/环境变量。
该包装器脚本(如果更改)是版本化的并且可以被审计(git blame):您知道谁更改了什么以及何时更改。

关于linux - git : Setting application environmental variables,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44513853/

相关文章:

linux - Visual Studio 2015/2017 无法创建目录,mkdir 退出代码 : 1 on Raspberry

Git 恢复说明

unix - 相当于 ftp put 和 append in scp

linux - UNIX shell 脚本,用于从文件运行 grep 命令列表并在单个分隔文件中获取结果

php - Unix 时间戳到 LDAP 时间戳

linux - 如何知道linux中的执行时间

linux - 使用 XGetPointerMapping/XSetPointerMapping 交换鼠标按钮

php - PHP 中 exec(sleep NUMBER; anotherCommand) 时如何继续执行?

git - 如何更改我分支的 git 分支?

java - git java 包装器 - git pull 永远不会结束