一键同步vscode所有扩展,解决多个设备!

4,345 阅读9分钟

今天系统出了点小毛病,还原了一下,各种下软件!!发现每次安装VScode时候都得要重新安装,还得在网上找那些插件(我是记不住这些插件的名字),后来我就想微软这么大的公司创造出来的代码编辑器有没有最初安装时直接上传至云(像码云、github等等这种托管的),等下次再安装的时候,直接从云一键下载/并安装最初所需的那些扩展,心动不如行动,我就问了会度娘,发现还真有,当时就鳌拜鳌拜鳌拜拜了!!看了会网上的教程发现都是使用旧版的同步扩展,跟我安装的不太一样,索性我就自己捣鼓,功夫不负有心人呐,捣鼓成功了!

记录一下怎么操作的,防止以后忘了(有点老年化了。。),不会的小伙伴可以照着我这个弄,我用最简洁、最详细的步骤来说明(当然够用就行了,我没有那么深入这个扩展,只要能一键同步就行了)。。

好了,开始(Action)。

① 首先呢,要去vscode官网下载vscode(你这不是废话么)

下载链接:code.visualstudio.com/

② 第二步,需要在vscode里搜索一下Settings Sync这个扩展插件,就是用这个玩意儿进行一键上传/下载的。(第一个就是,箭头指向的)如图:


③ 第三步,要去github上创建一个Gist这个token。

首先呢,登录gihub,如图:


大家可以看到,这个就是我的gihub上的主页了!(我的github上就是些练习的代码)

然后,点击右上角有个头像,点击一下或者点击头像右边的下箭头都可以,出现一个菜单,如图:


选择倒数第二个的Settings选项,点击一下。这时就会跳转到你的设置页面,如图:


可以看到左侧有蓝色的菜单栏,右侧是对应的选项!

这时我们选择左侧菜单栏中的 Developer settings 这个选项,我们要创建一个Token,点击一下。点击之后的页面就是这个样子,如图:


到这里再选择一下 Personal access tokens 这个选项(左侧菜单栏中的蓝色字,倒数第一个),翻译过来的大概意思是个人令牌,点击一下,出现这样的页面,如图:


可以看到这里列出的都是我以前用过的token列表!

我们在右上找到这个 Generate new token 这个选项,点击一下,出现如下页面,如图:


输入框中是要创建的名字,名字随意,只要符合规格就可以。至于下面的选项,我们往下找,有一个叫 gist 这个选项,只需找到 gist 选项,并且勾选上(选择上),然后点击下方的绿色按钮 Generate token 就创建成功了,如图:


前面有绿色对号的就是我刚才创建好的token,因为这个token是随机的,所以不一样!

然后我们记录一下这个token!因为我们重新刷新页面之后,这个token会看不到的,所以要记录一下!可以创建一个文档文本记录一下,下面还需要用到一个ID,所以最好创建记录一下(防止丢失)!!!

④ 第四步,有了这个token之后呢,我们回到vscode里,配置一下这个token!!

首先呢,我们要在个人用户名这个文件夹下找到Appdata这个文件夹(以我的路径为例)

依次打开的路径是:C:\Users\jiazhuangme\AppData\Roaming\Code\User, 如图:


可以看到我这里是有三个文件夹和三个JSON文件,通常这三个文件夹在你启动的时候就会有,其中有一个名为 syncLocalSettings.JSON 文件是安装Settings Sync扩展之后生成的(文件夹可以删除,不过这个JSON文件删除之后,还需得重新安装一下这个扩展,之后就自动生成了)!

我们要把创建好的token配置到这个 syncLocalSettings.JSON 文件中,可以用vscode打开,也可以拖拽进vscode。打开后的文件是这样,如图:


我们找到这个JSON文件中的token属性,把我们从github上创建好的token填写进去(copy and paste 复制和粘贴进去),Ctrl + S 保存,这时我们要重启一下vscode,让这个配置后的JSON文件生效!

接下来,重启完成后,在windows系统下按Ctrl + Shift + P (至于Mac我不太清楚,应该是Command + Shift + P吧),按下这个组合键调出命令框,如图:


我这里配置过了,所以菜单会不一样,不过没关系,我们需要在这个搜索框中输入 sync,如图:


这时我们选择 Sync: Advanced Options(Sync: 高级选项) 这个选项配置一下(注意:我这里是汉化的版本,英文名是 Sync: Advanced Options ,由于我配置过了,所以这个选项在第一项),出现后的界面如图:


我们在选择 “Sync: 打开设置” 这个选项,出现这个界面,如图:


这时,我们发现左侧是Gist ID,可千万不要把创建好的token填入进去,那样会提示ID无效的。右侧第一行是我们刚才配置过的JSON文件属性中的token, 可以看到已经生效了,那这个ID去哪里弄呢?别着急,下面我们来获取这个ID!

我们按一下 Shift + Alt + U 这个快捷键,我们先上传一下我们安装的所有vscode扩展,耐心等待上传成功,成功之后会在vscode控制台自动弹出上传信息,如图:


可以看到,我这里是上传成功的!最后出现了Done提示!

注意:这里提示Done后,vscode在右下角会弹出一个Sync ID提示框,提示让你保存这个ID,如果小伙伴们粗心,叉掉了这个提示框,我们可以在设置里,在搜索框里输入sync,就会出现刚才上传的ID啦,如图:


红色圈圈的就是我们刚才上传的ID啦,不信?可以试一试哈!

那现在我们就有了ID和token了,token设置完成了,就剩下ID设置了。

如果小伙伴们不相信全部上传成功的话,教你们一个方法,那就是在控制台信息中查看上传扩展的名字和你本地安装的扩展名字是否对应(要不要这么笨~~~),还有一种方法是查看github上创建完成token后的页面,如图:


我这里是以前的,为了演示方便,我把刚创建过的token删掉了。

这里可以看到左侧是你创建的token(gist)名称,右侧会有这个描述,如果刚才没有上传成功的话,描述会说Used never,也就是从未使用。而我现在这个描述是已经使用了。

如果小伙伴有其他辨别是否成功的方法可以在评论区留言!!目前我就发现了这两种方法!

接下来,我们配置最后一步,配置这个ID。

还是打开之前的界面,也就是Sync: 高级选项的界面,如果小伙伴忘了怎么操作的话,顺序就是:Ctrl + Shift + P -> 输入sync -> 选择sync: 高级选项 -> 选择sync: 打开设置,如图:


还记得我们上面说的ID没有么,输入框是空的吗?

这回我们有了这个ID,就可以在左侧 Gist ID 输入框中填入我们刚才得到的ID(还是copy and paste),填写完成后,左下角有个大对号,我们点击一下,保存!!

⑤ 接下来我们测试一下是否可以一键上传哈!!

首先,我们找到个人用户名文件夹下有个.vscode扩展名的文件夹,如果看不到这个扩展名,可以在菜单栏中找到查看选项,点击查看 -> 勾选隐藏的项目,然后我们就会看到了。

之后我们进入.vscode下的extensions这个文件夹,把这个文件夹中的所有扩展全部删掉(这里就是vscode安装的所有扩展),Ctrl + A -> Delete 删除掉(放到回收站)!


为了给大家重新演示,我这里是全部删除了!

接下来重新启动vscode,然后安装 Settings Sync ,安装完成后再设置一下这个扩展,把我们之前创建好的 token 和 ID 配置进去,这里我就不在赘述了,大家可以翻看上面的操作步骤!

配置好之后,这时我们在vscode界面下,按下 Shift + Alt + D 这个快捷键,这个快捷键是下载我们之前上传过的所有扩展命令(Shift + Alt + U 是上传命令),然后我们就可以静静的等待着所有扩展下载/安装了!如图:


可以看到,这里是正在下载/安装我们之前上传过的所有扩展!

前方高能!!

注意:如果想测试的话呢,需在 C:\Users\jiazhuangme\AppData\Roaming\Code\User 这个路径下的所有文件都删除!!!至于为什么删除,那是因为,我们刚才是配置过的,当在另一台电脑上会没有这个配置,这里只是模拟新电脑的环境!!!这里大家需要特别注意!!!

我这里显示安装/下载成功了,如图:


我们再来看一下vscode extensions文件夹扩展是否都安装成功了,如图:


最后查看一下vscode扩展是否都有,如图:


可以看到,我这里都安装成功了,这样就再也不用在另一台电脑上,找插件,再安装了!有没有觉得很方便呢,稍微配置一下就可以实现这个功能了,小伙伴们赶快试一下吧!!

特别注意:上面提到过记录token和ID,一定要保存好!

我记录在了文本文档(记事本)里,如图:


这样的话,我们就可以拥有token和ID了,只要拥有这两个东西,无论是控制上传/下载都很方便,就像用github托管你的代码一样,随意上传/下载。我们还可以把这个记事本上传至任意一个云上面,比如百度云,这样你在另一台机器上只需下载这个重要的记事本就可以了,也不担心会丢,一定要养成勤备份的习惯!!!

这篇文章主要是记录一下操作流程,虽然有点啰嗦,但我相信,大部分人应该都会懂!大家在网上看不懂的,一定要自己捣鼓,捣鼓捣鼓说不定就成了呢!

(有句话说的好,万一就实现了呢?)

捣鼓完这个,还得去捣鼓C语言了,说实话,C语言指针初学还真有点不太理解~~~