开发 Tips(10)

2023年 1月 4日 40.0k 0

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

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

通过添加启动命令参数,可以使得打开 shell 时,执行初始化脚本 .bash_profile 。编辑 settings.json,以 OS X 为例,新增如下内容即可:

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

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

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

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

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

3. OS X 制作 CentOS 启动盘

  • 查看 U 盘的挂载点
  • 1
    2
    3
    4
    5
    
    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
    
  • 卸载 U 盘
  • 1
    2
    
    diskutil unmountDisk /dev/disk2
    Unmount of all volumes on disk2 was successful
    
  • 写入 ISO 镜像
  • 1
    
    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 查看写入进度。

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

    1
    
    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 ),直接执行编译命令。

    1
    
    go build main.go
    

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

  • 安装 dep
  • 1
    
    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 文件夹,那么直接编译即可。

    1
    
    go build main.go
    

    如果项目下没有 vendor 文件夹,则需要首先安装依赖包。go module 是 go 1.11 版本内置的特性,不需要安装。安装依赖包:

    1
    
    go mod download
    

    相关文章

    KubeSphere 部署向量数据库 Milvus 实战指南
    探索 Kubernetes 持久化存储之 Longhorn 初窥门径
    征服 Docker 镜像访问限制!KubeSphere v3.4.1 成功部署全攻略
    那些年在 Terraform 上吃到的糖和踩过的坑
    无需 Kubernetes 测试 Kubernetes 网络实现
    Kubernetes v1.31 中的移除和主要变更

    发布评论