共计 2233 个字符,预计需要花费 6 分钟才能阅读完成。
GitHub 是寰球最受欢迎的开发者平台,⾃从微软收买了 GitHub 后,GitHub 的性能就越来越强⼤,除了原有的代码治理外,也减少了很多硬货,这就包含了集成 CI/CD 的 GitHub Actions,以及欠缺的项⽬治理性能,还有⼀个云端的开发环境 GitHub CodeSpace。GitHub Codespaces 并不只是⼀个简略的改改代码的编辑器,它还蕴含了⼀个残缺开发环境,让你能够在云上开发残缺的项⽬。
什么是 GitHub Codespaces
GitHub Codespaces 是云端的开发环境,它容许开发⼈员通过浏览器或从本地的 Visual Studio Code IDE 间接进⾏调试、保护、更改、部署 GitHub 上的代码。现阶段 GitHub Codespaces 只提供给团队和企业版本。
上图是官⽅对于 GitHub Codespaces 实现的形容。你能够把 GitHub 看成⼀个传统的 C/S 架构。在后端使⽤虚拟化技术(容器 / 虚拟机)设置你的代码,开发环境以及相干依赖等,在前端局部能够通过本地装置的 Visual Studio Code 或者浏览器拜访使⽤。
GitHub Codespaces 有⼏个长处:
- ⾼性能 ⸺ 开发⼈员能够使⽤更好性能的虚构开发环境,提⾼开发⼈员的⽣产⼒
- ⾼平安 ⸺ 只有受权⽤户能力拜访 GitHub Codespaces
- 易治理 ⸺ 开发⼈员能够轻松地在每个项⽬的根底上治理依赖项和扩大
- ⼀致性 ⸺ 团队开发⾥,通过 GitHub Codespaces 开发⼈员之间有统⼀的的开发环境,能够⾮常轻松地治理项⽬上的依赖和扩大
- 跨设施 ⸺ 基于浏览器的编码体验意味着能够在任何设施上进⾏开发,例如:⼿机、iPad、平板电脑等,从⽽提⾼了开发⽣产效率
通过 iPad 开发⼀个 Azure Functions 的项⽬
1. ⾸先关上我的 iPad Safari 浏览器,拜访我的⼀个 GitHub Repository,抉择 Code 按钮,再抉择 Codespaces 标签点击 New Codespaces,你就能够启动⼀个基于该 Repo 下的 Codespaces 环境
2. 抉择胜利后,会让你抉择须要的虚构开发环境配置 (你能够依据你的须要去设置),这⾥我抉择⼀个 4 核 CPU,8G 内存,32GB 存储的虚拟环境
抉择后,须要稍等⽚刻,这⾥会帮你在云端开启虚拟环境
配置胜利后,在浏览器就能够启动云端的 Visual Studio Code 环境
3. 按 Cmd + Shift + P 抉择开发开发环境 (Codespaces: Configure Container Features…),你能够抉择你的应⽤场景和开发的语⾔
如果你是第⼀次会让你增加相干的⽂件
列表抉择展现所有设定 (Show All Definitions…)
抉择 Azure Functions & Python 3
创立胜利后,你会看到 Repo 会新增.devcontainer ⽂件夹,新增 devcontainer.json 和 Dockerfile
抉择右下⻆ Rebuild / Cmd + Shift + P 抉择 Codespaces: Rebuild Container 就能够配置好你的 Azure Functions 开发环境了
这⾥我要说说在 .devcontainer 下的两个⽂件
devcontainer.json
devcontainer.json 是 Codespace 下设定的开发环境配置,除了对应的 Dockefile 外,还包含开发须要到的端⼝,设定,以及对应的 Visual Studio Code 插件装置。像我这⾥就有开发的 Docker 端⼝,以及 Python/Docker/Azure Functions 等插件。这个配置环境对于多⼈开发的项⽬是⾮常有⽤的,因为新的开发⼈员不⽤再关⼼开发环境如何配置,节约了配置工夫
例如我想装置 Thunder Client 插件给到开发团队,就能够在 extensions 字段增加 “rangav.vscode-thunderclient”
"extensions": [
"ms-azuretools.vscode-azurefunctions",
"ms-azuretools.vscode-docker",
"ms-python.python",
"rangav.vscode-thunder-client"
]
再抉择 Rebuild container 就能够为当前的开发者,装置好 Thunder Client 组件了
Dockerfile
Dockerfile 就是对应的开发环境设置,当然你也能够依据⾃身开发须要,创立⾃⼰的开发环境容器
4. 这个时候你就能够抉择 Azure 环境创立 Azure Functions 应⽤了(这⼀步我就不⼀⼀介绍了,和本地创立是⼀样的)
5. 来谈谈调试,能够间接进⾏调试,就如本地应⽤⼀样,⾮常⽅便
调试胜利后,你能够同步⼀下代码到你的 GitHub
当然你也能够间接通过 GitHub Actions 对 Repo 进⾏ CI/CD 操作,这⾥篇幅无限我就不⼀⼀多说了。
总结
GitHub Codespaces 与 GitHub ⽆缝连贯,通过云端不仅治理好你的代码,更能够作为开发环境,间接通过任意浏览器就能够实现整个研发周期的⼯作,升高了对本地硬件的依赖。更让依赖于 GitHub 的个⼈和团队,提供更好的⽣产⼒。⼩搭档们快快⽤起来。
相干资源
1. 理解 GitHub Codespaces 更多信息
https://docs.github.com/cn/co…
2.Azure Functions 的开发
https://docs.microsoft.com/zh…