在 repo 上存储 "dist" 文件夹以进行部署的最佳做法
Best practices to store "dist" folder on repo for deploy
我们正在开发一个使用 yeoman angular 生成器构建的项目。现在需要 "puppetize" 它进行部署。
显然,服务于客户端的机器应该提供 angular 项目的编译(最小化、优化)版本。但我不知道我们是否应该将它存储在我们的 bitbucket 存储库中——例如在标记新版本时存储在 master 分支上——
我找不到任何关于这种做法的 post,我需要一些帮助。
关于 angular 缩小版的一些事实:
- 它已被丑化和缩小,因此代码不可读且难以更改。
- 需要用gruntjs之类的工具进行编译,每次构建都需要一些时间。
- 它可以在服务器上运行,但是当您选择部署非缩小的修订版本时,在将新版本添加到同一存储库时可能会遇到其他问题 - 脚本具有相同的名称并且缓存在浏览器中以及可能的其他问题。
您决定将编译后的版本部署到客户端机器上。
如果您正在使用像 git 这样的版本控制。您可以将编译版本的文件夹添加到 repo,因此您的存储库在同一文件夹中有源和 dist。可能你也有后端代码,有时在后端代码中你可以添加编译版本到服务器上的主机。最好将所有代码和构建放在一个存储库中,这样您就可以使用一个命令来完成此操作。
就我而言,我在 java 中编写了脚本,以将构建的文件夹复制到另一个文件夹。我们还使用 Visual Studio 作为后端,所以我编写了将新文件名添加到 .cs 文件的脚本,以便持续集成工具可以看到它。
进入决赛,在 git 中从发布主分支创建新分支。拥有部分作品的副本很有用。
我不知道你多久发布一次,但你可以通过在 git 中设置 分支 来解决它。
所以你的分支可以是这样的:
硕士
发布 1
发布 2
...
假设您在 master 上进行开发并将新版本复制到发行版。
我们正在开发一个使用 yeoman angular 生成器构建的项目。现在需要 "puppetize" 它进行部署。
显然,服务于客户端的机器应该提供 angular 项目的编译(最小化、优化)版本。但我不知道我们是否应该将它存储在我们的 bitbucket 存储库中——例如在标记新版本时存储在 master 分支上——
我找不到任何关于这种做法的 post,我需要一些帮助。
关于 angular 缩小版的一些事实:
- 它已被丑化和缩小,因此代码不可读且难以更改。
- 需要用gruntjs之类的工具进行编译,每次构建都需要一些时间。
- 它可以在服务器上运行,但是当您选择部署非缩小的修订版本时,在将新版本添加到同一存储库时可能会遇到其他问题 - 脚本具有相同的名称并且缓存在浏览器中以及可能的其他问题。
您决定将编译后的版本部署到客户端机器上。
如果您正在使用像 git 这样的版本控制。您可以将编译版本的文件夹添加到 repo,因此您的存储库在同一文件夹中有源和 dist。可能你也有后端代码,有时在后端代码中你可以添加编译版本到服务器上的主机。最好将所有代码和构建放在一个存储库中,这样您就可以使用一个命令来完成此操作。
就我而言,我在 java 中编写了脚本,以将构建的文件夹复制到另一个文件夹。我们还使用 Visual Studio 作为后端,所以我编写了将新文件名添加到 .cs 文件的脚本,以便持续集成工具可以看到它。
进入决赛,在 git 中从发布主分支创建新分支。拥有部分作品的副本很有用。 我不知道你多久发布一次,但你可以通过在 git 中设置 分支 来解决它。 所以你的分支可以是这样的:
硕士
发布 1
发布 2
...
假设您在 master 上进行开发并将新版本复制到发行版。