gf-cli v0.7.4 发布,GoFrame 开发工具链

栏目: 软件资讯 · 发布时间: 4年前

内容简介:大家好啊,GoFrame框架隆重推出了开发工具链项目,该工具链通过CLI命令行工具提供,工具开源项目地址:https://github.com/gogf/gf-cli 完整命令 $ gf USAGE gf COMMAND [ARGUMENT] [OPTION] COMMAND...

大家好啊,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):

  1. 当前Go版本。
  2. 当前GF版本。
  3. 当前编译时间。
  4. 当前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个文件:

  1. 数据表名.go 自定义文件,开发者可以自由定义填充的代码文件,仅会生成一次,每一次模型生成不会覆盖。
  2. 数据表名_entity.go 表结构文件,根据数据表结构生成的结构体定义文件,包含字段注释。数据表在外部变更后,可使用gen命令重复生成更新该文件。
  3. 数据表名_model.go 表模型文件,为数据表提供了许多便捷的CURD操作方法,并可直接查询返回该表的结构体对象。数据表在外部变更后,可使用gen命令重复生成更新该文件。

数据表模型生成支持的数据库类型为:MySQL/MariaDBPostgreSQLSQLiteSQLServer。目前暂不支持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。非必需参数OPTIONSdocker build命令相同参数及选项。

update 工具更新

使用方式:gf update

该命令用以检测gf命令行工具的版本,并自动执行版本更新。

部分系统需要管理员权限支持。如果更新失败,请手动重新下载更新。

pack 二进制打包

使用方式:gf pack SRC DST

该命令用以将任意的文件打包为二进制文件,或者Go代码文件,可将任意文件打包后随着可执行文件一同发布。此外,在build命令中支持打包+编译一步进行,具体请查看build命令帮助信息。

help 命令行帮助

使用方式:

  • gf -h
  • gf -?
  • gf help [COMMAND]
  • gf [COMMAND] -h

任何不懂的,就用help看看吧。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

榨干百度谷歌

榨干百度谷歌

张志 / 电子工业出版社 / 2011-1 / 28.00元

小小的搜索引擎,可以成为你从事网络营销的利器。如果你还没有意识到这一点,或者还不知道从何下手,请打开《榨干百度谷歌:搜索引擎广告大赢家》吧!《榨干百度谷歌:搜索引擎广告大赢家》作者将其丰富的实战经验融汇在这书中,结合大量国内不同行业实际应用案例,生动地告诉读者,怎样正确地利用搜索引擎,以很小的投资获得巨大的回报。并且深入浅出地介绍了企业开展搜索营销的关键点,包括如何提炼并组合关键词、如何撰写简洁明......一起来看看 《榨干百度谷歌》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具