开发过程中往往会遇到开发人员部署的情况
当然最好的方式是我们在公司有运维团队帮助我们线上部署,但是基于开发或者某些条件下,开发者往往需要自己部署代码。
常见的部署过程(在这里只以两种语言类示例)
编译型语言(java)
- java语言代码以.java结尾、同时可能会有杂七杂八的环境变量配置(*.properties)
- 调用javac或者打包工具,帮助我们将项目打包。
- 连接服务器(把你的代码丢上去)、如果需要环境变量配置,还需要额外修改好你的代码配置再丢上去。
- 在服务器启动你的服务。至此过程完结
解释型语言(JavaScript)
- JavaScript发展很快,有些框架设计了预编译过程、打包过程,此处不再赘述、仅以基础的JavaScript(es3标准)文件来示例
- 如果是浏览器端代码、往往需要集成在web容器中,随着服务器语言一同打包。
- 如果是node.js代码。则
- 需要连接服务器(把你的代码丢上去)、如果需要环境变量配置,还需要额外修改好你的代码配置再丢上去。
- 在服务器启动你的服务。至此过程完结。
配置同步服务器代码过程
jetbrains为我们设置了比较方便的功能,帮助我们快速同步上传/下载服务器的代码
-
选择Tools>deployment>configuration……
选择配置 -
在Deployment面板中,点击左上角加号,添加一项配置
添加配置 -
填下你的配置名称和传输协议、这里我选择了sftp协议
填写配置 -
填写配置内容:
- SFTP host是你的远程服务器的ip地址:不再赘述
- port是你服务器连接端口号
- root path 是你要同步代码在服务器的那个位置、在这里我的项目均放在Linux系统中(/home/dev/projects)。
-
username/authType/password不再赘述、连接服务器必备选项。
服务器详细配置
5.配置文件映射关系
-
选中mappings选项卡。添加 "/"根目录、意思为:我们当前ide开发环境的根目录对应着整个linux的根目录。
配置映射 -
配置忽略文件夹:我当然不会同步整个项目,有一些文件夹使我们不需要上传的:例如java中的.java代码、我只要上传.class文件即可,.java未编译的代码上传到服务器也没有意义、还需要重新编译
当然你也可以上传,在服务器中进行编译和部署
。例如JavaScript中的node_modules(太臃肿),我也不需要。
忽略node_modules文件夹
如何同步上传代码?
- 需要你首先配置成功一个服务器(请确保Connection选项卡中 test FTP connection结果是success)
-
选中你要上传的文件(当然你也可以选择项目的根目录、上传整个项目)快捷键 ctrl+shift+alt+x(默认intellij键位)
选中整个项目上传到服务器
选中整个项目快捷键上传 -
上传成功可以在file transfer选项卡中看到(找不到的小伙伴不要着急、jetbrains默认会隐藏该选项卡,当你有用到这个内容提示的时候会自动提示出来的)
上传成功
你也可以自己在view>tool windows>file transfer中找到该选项卡
打开file transfer选项卡