目录

    主要记录最近遇到的一些开发问题,解决方法。

    1. VS Code 终端执行 .bash_profile 初始化脚本

    通过添加启动命令参数,可以使得打开 shell 时,执行初始化脚本 .bash_profile

    编辑 settings.json,以 OS X 为例,新增如下内容即可:

    {
      "terminal.integrated.shellArgs.osx": ["-l"]
    }
    

    2. VS Code 配置 zsh 后,图标无法显示

    由于安装补丁字体之后,VS Code 无法自动检测到,需要在 settings.json 中进行配置。

    {
      "terminal.integrated.fontFamily": "Source Code Pro for Powerline"
    }
    

    参考: https://gist.github.com/kevin-smets/8568070

    3. OS X 制作 CentOS 启动盘

    1. 查看 U 盘的挂载点
    diskutil list
    /dev/disk2 (external, physical):
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:     FDisk_partition_scheme                        *7.8 GB     disk2
       1:             Windows_FAT_32 ESD-ISO                 7.8 GB     disk2s4
    
    1. 卸载 U 盘
    diskutil unmountDisk /dev/disk2
    Unmount of all volumes on disk2 was successful
    
    1. 写入 ISO 镜像
    sudo dd if=/your_real_path/CentOS-7-x86_64-DVD-1810.iso  of=/dev/rdisk2 bs=1m
    

    if 参数指定待写入文件位置,of 参数指定输出文件位置,这里的意思是,将镜像写入到 U 盘中。需要注意的是,rdisk2 表示的是 disk2 的原始盘,bs=1m 表示写入块的大小为 1MB ,目的是为了更快写入数据。

    可以通过 Ctrl + T 查看写入进度。

    1. 弹出 U 盘

    大约几分钟之后,写入完毕。弹出 U 盘:

    diskutil eject /dev/disk2
    

    4. 如何运行一个 Go 写的项目

    通过 Readme 文档、Makefile 文件、脚本,通常可以快速了解如何运行一个 Go 写的项目。但有时,由于资料不完善,需要自己尝试摸索。

    4.1 包含 Gopkg.lock 和 Gopkg.toml 文件的项目

    Gopkg.local 和 Gopkg.toml 是 dep 用于包管理的两个文件,需要将项目拷贝到 $GOPATH/src 目录下。

    如果项目目录下,还有 vendor 目录,可以找到入口文件(通常是 main.go ),直接执行编译命令。

    go build main.go
    

    如果没有 vendor 目录,则需要首先安装依赖包。

    1. 安装 dep
    go get -u github.com/golang/dep/cmd/dep
    
    1. 安装依赖
    dep ensure
    

    dep 会将依赖安装到当前项目的 vendor 目录下。安装完毕,再执行编译命令。

    4.2 包含 go.sum 和 go.mod 文件的项目

    go.sum 和 go.mod 是 Go Modules 用于包管理的两个文件。

    如果项目下有 vendor 文件夹,那么直接编译即可。

    go build main.go
    

    如果项目下没有 vendor 文件夹,则需要首先安装依赖包。

    go module 是 go 1.11 版本内置的特性,不需要安装。安装依赖包:

    go mod download