linux服务器拉取git代码,打包vue项目进行自动部署的shell脚本

  1. #!/bin/bash
  2. # 定义项目路径和部署目录
  3. project_path='/www/vue-project'
  4. build_path='/www/build'
  5. # 进入项目目录进行代码更新
  6. cd $project_path
  7. git fetch origin master
  8. new_changes=$(git rev-list HEAD...origin/master --count)
  9. # 判断是否有新的更改
  10. if [ $new_changes -gt 0 ]; then
  11. # 执行代码更新
  12. git pull
  13. # 安装依赖
  14. npm install
  15. # 执行vue编译命令
  16. npm run build
  17. # 将打包文件拷贝到部署目录
  18. # cp -r $project_path/dist/index.html $build_path/
  19. cp -r $project_path/dist/* $build_path/
  20. chmod -R www 755 $build_path/
  21. sudo chown -R www $build_path/
  22. sudo chmod -R 755 $build_path/
  23. # 重启nginx服务器
  24. # systemctl restart nginx
  25. else
  26. # # # 如果没有新的更改,则不进行编译
  27. echo "No changes in git repo"
  28. fi