gf-cli v0.7.4 发布,GoFrame 开发工具链
大家好啊,GoFrame框架隆重推出了开发工具链项目,该工具链通过CLI命令行工具提供,工具开源项目地址:https://github.com/gogf/gf-cli
完整命令
$ gf USAGE gf COMMAND [ARGUMENT] [OPTION] COMMAND get install or update GF to system in default... gen automatically generate go files for ORM models... run running go codes with hot-compiled-like feature... init initialize an empty GF project at current working directory... help show more information about a specified command pack packing any file/directory to a resource file, or a go file build cross-building go project for lots of platforms... docker create a docker image for current GF project... swagger parse and start a swagger feature server for current project... update update current gf binary to latest one (might need root/admin permission) install install gf binary to system (might need root/admin permission) version show current binary version info OPTION -y all yes for all command without prompt ask -?,-h show this help or detail for specified command -v,-i show version information ADDITIONAL Use 'gf help COMMAND' or 'gf COMMAND -h' for detail about a command, which has '...' in the tail of their comments.
install
工具安装
使用方式:./gf install
该命令往往是在gf
命令行工具下载到本地后执行(注意执行权限),用于将gf
命令安装到系统环境变量默认支持的目录路径中,以便于在系统任何的地方直接可以使用gf
工具。
部分系统需要管理员权限支持。
如果是
MacOS
下使用zsh
的小伙伴可能会遇到别名冲突问题,可以通过alias gf=gf
来解决。
version
工具版本查看
使用方式:
gf -v
gf -i
gf version
用以查看当前gf
命令行工具编译时的版本信息。例如:
$ gf -v GoFrame CLI Tool v0.7.4, https://goframe.org Install Path: /usr/local/bin/gf Build Detail: Go Version: go1.14 GF Version: v1.12.2 Git Commit: bd19f7af64f9d34fac2d4d10043ff8020a1ec74a Build Time: 2020-04-18 14:41:58
init
项目初始化
使用方式:gf init [NAME]
我们可以使用init
命令在当前目录生成一个示例的GF
空框架项目,并可给定可选的项目名称参数。生成的项目目录结构仅供参考,根据业务项目具体情况可自行调整。
GF
框架开发推荐统一使用官方的go module
特性进行依赖包管理,因此空项目根目录下也有一个go.mod
文件。
build
交叉编译
使用方式:gf build FILE [OPTION]
仅限于交叉编译使用到GF
框架的项目,支持绝大部分常见系统的直接交叉编译。并且支持配置文件管理编译选项、嵌入编译时变量,默认嵌入的编译时变量包括(参考gf -v
):
- 当前
Go
版本。 - 当前
GF
版本。 - 当前编译时间。
- 当前
Git Commit
(如果存在)。
配置选项的释义同命令行同名选项。
编译时的内置变量可以在运行时通过
gbuild
包获取。
gen
代码生成命令
使用方式:gf gen model [PATH] [OPTION]
gen
命令用以自动化从数据库直接生成模型文件。可以参考gf-demos
示例项目中的模型文件即是通过该命令生成的:https://github.com/gogf/gf-demos/tree/master/app/model
模型生成采用了Active Record
设计模式。该命令将会根据数据表名生成对应的目录,该目录名称即数据表包名。目录下自动生成3个文件:
数据表名.go
自定义文件,开发者可以自由定义填充的代码文件,仅会生成一次,每一次模型生成不会覆盖。数据表名_entity.go
表结构文件,根据数据表结构生成的结构体定义文件,包含字段注释。数据表在外部变更后,可使用gen
命令重复生成更新该文件。数据表名_model.go
表模型文件,为数据表提供了许多便捷的CURD
操作方法,并可直接查询返回该表的结构体对象。数据表在外部变更后,可使用gen
命令重复生成更新该文件。
数据表模型生成支持的数据库类型为:
MySQL/MariaDB
、PostgreSQL
、SQLite
、SQLServer
。目前暂不支持Oracle
,若有需求请联系作者。
run
热编译(自动编译)
使用方式:gf run FILE
由于Go
是不支持热编译特性的,每一次代码变更后都要重新手动停止、编译、运行代码文件。run
命令也不是实现热编译功能,而是提供了自动编译功能,当开发者修改了项目中的go
文件时,该命令将会自动编译当前程序,并停止原有程序,运行新版的程序。
run
命令会递归监控当前运行目录的所有go
文件变化来实现自动编译。
get
依赖包下载
使用方式:gf get PACKAGE
gf get
命令和go get
命令类似,内部自动提供了代理设置功能,并智能识别并设置最快的下载代理地址。
docker
镜像编译
使用方式:gf docker [FILE] [OPTIONS]
自动编译并生成docker
镜像。非必需FILE
参数为编译文件路径,默认为main.go
。非必需参数OPTIONS
为docker build
命令相同参数及选项。
update
工具更新
使用方式:gf update
该命令用以检测gf
命令行工具的版本,并自动执行版本更新。
部分系统需要管理员权限支持。如果更新失败,请手动重新下载更新。
pack
二进制打包
使用方式:gf pack SRC DST
该命令用以将任意的文件打包为二进制文件,或者Go
代码文件,可将任意文件打包后随着可执行文件一同发布。此外,在build
命令中支持打包+编译一步进行,具体请查看build
命令帮助信息。
help
命令行帮助
使用方式:
gf -h
gf -?
gf help [COMMAND]
gf [COMMAND] -h
任何不懂的,就用help
看看吧。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
附件在线预览组件 WDA 1.2.4 发布,支持 mp4 视频播放功能
当前版本v1.2.4,更新内容: 功能增加:增加MP4视频文件在线预览 bug修复:通过URL提交文件时,对文件名称的正确解析 MP4视频文件在线预览方法: 1.通过两种方式提交mp4文件 2.在线播放
- 下一篇
可视化页面搭建平台码良新增 pc 导航组件
码良介绍 godspen-一个完全免费开源活动营销系统,扩展性非常高,也是一个低代码开发平台,可以方便开发组件,也可以通过脚本扩展组件能力,也方面营销,运营使用,更方便公司内部搭建使用,更方便自己学习。 官网: https://godspen.ymm56.com/ 使用手册: https://godspen.ymm56.com/doc/cookbook/introduce.html 在线体验: https://godspen.ymm56.com/admin/#/home 私有部署: https://godspen.ymm56.com/doc/cookbook/install.html 组件商城: https://godspen.ymm56.com/shop/ 今天在组件商城新增 导航组件 导航组件 提供了一个通用的导航组件,具有丰富的设定项,满足大部分导航需求 导航项 组件被添加后,默认含有一个导航,可点击底部的"添加+"按钮添加其他一级导航 多级菜单 导航菜单支持添加子菜单,点击导航项右侧的"+"即可添加子菜单,最多两级。 顺序调整 点击导航项右侧的上下箭头即可调整顺序。 内容 ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS8编译安装MySQL8.0.19
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Windows10,CentOS7,CentOS8安装Nodejs环境