打造VS Code编程利器

179 阅读4分钟

一、必备插件安装

必装的插件列表如下

插件列表
[1] vscode-icons
[2] Vim
[3] Remote - SSH

二、使用VS Code进行远程开发

2.1 连接远程服务器

见参考文章[1]

2.2 免密配置

为避免多次输入password,可配置SSH 免密登录,方式如下

  1. 在 Windows(总之是你本地机器) 上执行 SSH 密钥生成命令

    • 打开 PowerShell 或 Command Prompt(cmd)。
    • 执行以下命令生成 SSH 密钥对:
      ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
      
    • 你会被提示选择保存密钥的位置,默认是 C:\Users\YourUsername\.ssh\id_rsa。直接按 Enter 使用默认路径。
    • 接下来会要求你输入一个密码短语(passphrase)。你可以设置一个密码,也可以直接按 Enter 跳过,这样以后使用密钥时不需要输入密码。
  2. 将公钥复制到远程 Linux 服务器

显示公钥内容

  • 在 PowerShell 中,运行以下命令显示你生成的公钥内容:
    cat ~/.ssh/id_rsa.pub
    
  • 如果你使用了默认路径,公钥内容将显示在终端中。

复制公钥内容

  • 选择并复制终端中显示的公钥内容。

登录远程服务器

  • 使用 SSH 登录到你的远程 Linux 服务器:
    ssh username@remote_host
    
  • username 替换为你的远程用户名,remote_host 替换为远程服务器的 IP 地址或主机名。

在远程服务器上创建 .ssh 目录(如果尚未存在)

  • 确保你在远程服务器上有 .ssh 目录,执行以下命令:
    mkdir -p ~/.ssh
    chmod 700 ~/.ssh
    

将公钥添加到 authorized_keys 文件中

  • 编辑或创建 authorized_keys 文件:
    nano ~/.ssh/authorized_keys
    
  • 将你之前复制的公钥内容粘贴到文件中,然后保存并退出。

设置 authorized_keys 文件权限

  • 设置正确的权限:
    chmod 600 ~/.ssh/authorized_keys
    

测试 SSH 免密登录

  • 退出远程服务器,然后再次尝试使用 SSH 登录:
    ssh username@remote_host
    
  • 你应该能够直接登录到远程服务器,而不需要输入密码。

测试 SSH 免密登录

  • 现在你可以尝试通过 SSH 连接到远程服务器,不需要再输入密码:
    ssh username@remote_host
    
  • 如果设置成功,你应该能够直接登录到远程服务器。
  1. 总结
  • 你需要在本地 Windows 机器上生成 SSH 密钥对。
  • 然后将生成的公钥复制到远程 Linux 服务器。
  • 这样,你以后通过 SSH 连接到远程服务器时,可以免去每次输入密码的步骤。

如果经过上述步骤还登录不上,请检查你的/etc/ssh/sshd_config中的配置,具体可以问GPT,确保各目录的权限分配正确

参考文章或视频链接
[1] Remote Development using SSH - VS Code
[2] Remote Development Tips and Tricks - VS Code

2.3 提示插件pylance配置

pylance是vscode中python的代码提示插件,它会分析你目前打开的文件夹,以下是一个优化后的 settings.json 配置示例,适合大项目或远程开发场景,可以显著提高性能

{
    "python.analysis.exclude": [
        "**/.git",
        "**/node_modules",
        "**/__pycache__",
        "**/build",
        "**/dist",
        "**/venv"
    ],
    "python.analysis.typeCheckingMode": "off",
    "python.analysis.indexing": false,
    "python.analysis.maxFileSize": 2,
    "python.analysis.autoSearchPaths": false,
    "python.analysis.stubPath": "./typings"
}

2.4 界面优化

UI可以使用Material Icon Theme插件,并且可以选择性的排除一些不想在vscode中看到的目录,如__pychache__,可以在settings.json中添加以下配置,其中User settings.json,remote settings.json,Workspace settings.json三者的关系是:

  • 优先级关系:工作区设置 > 远程设置 > 用户设置。
  • 覆盖机制:更局部的设置(如工作区设置)可以覆盖更广泛的设置(如用户设置)。远程设置只在远程开发时生效,并覆盖用户设置。
{
  "files.exclude": {
    "**/__pycache__": true,
    "**/.git": true,
    "**/.vscode": true
  },
  "python.analysis.exclude": [
    "**/__pycache__"
  ]
}

2.5 Workspace下添加多个folder

这样可以避免打开多个窗口,避免反复将文件拷贝到当前的目录下,实现共用

image.png

image.png

三、VSCode下操作Git

选择了用VSCode进行远程开发,就避免不了要在VSCode下操作git,但是VSCode下操作git,如果不依赖各种开源的图形化操作插件如GitLens(付费),很难做到像Jetbrain系列产品那样便捷,因此,不可避免地要学会如何用原始的命令行+少量的VSCode原生图形界面来操作git

3.1 git基础命令

# 1.初始化当前文件夹
git init
# 2.设置远程仓库
git remote add origin <remote_repository_url>
# 3.列出所有远程分支
git branch -r
# 4.查看当前本地分支
git branch
# 5. 添加文件到暂存区
git add <file_name>
# 6.查看当前所有暂存区文件
git status
# 7.将更改推送到远程仓库。
git push -u origin master
# 8.启用 Git 凭证管理器,避免每次push都输入username和pass
git config --global credential.helper cache

四、其它配置参考

插件列表
[1] 史上最全vscode配置使用教程 - 灰蓝宇墨的文章 - 知乎