前言
本地是win10系統,代碼需要在linux下跑,又不想裝虛擬機或雙系統,恰好有個工作站(服務器)。
- 在工作站上搞了個用戶,一開始是用winscp傳送文件的,甚覺麻煩
- 後來在工作站上部署了gitlab,開始通過先把代碼push到gitlab上,再通過xshell把代碼pull到工程文件夾中,卻發現有可能一不小心寫錯了變量名就得重新push-pull,導致commit graph上滿滿的bug fixed
sftp配置
1.在vscode中下載sftp插件
- 在vscode中快捷鍵
ctrl+shift+P
打開指令窗口,輸入extension:install
,回車,左側即打開擴展安裝的界面
- 在搜索框中輸入
sftp
,第一個就是需要安裝的,點安裝
2.在vscode的工程中配置sftp.json
然後快捷鍵
ctrl+shift+P
打開指令窗口,輸入sftp:config
,回車,就會在當前工作工程的.vscode
文件夾下生成一個sftp.json
文件,不知道哪天似乎是插件更新了,默認的文件非常空,我們只能手動配置文件的參數了。配置好host, port, username, privateKeyPath, remotePath, ignore
這參數即可:- host:工作站的IP地址
- port:ssh的端口
- username:工作站自己的用戶名
- privateKeyPath:存放在本地的已配置好的用於登錄工作站的密鑰文件。和下面的使用密碼二選一(可以是openssh格式的,也可以是ppk格式的)
- password:工作站自己的用戶密碼。使用密鑰和使用密碼選用一種即可;使用密碼的話工作站不用配置ssh,但使用密鑰的話工作站上需要配置好ssh,password就可以填null
- protocol:協議類型,默認選
"sftp"
- remotePath:工作站上與本地工程同步的文件夾路徑,需要和本地工程文件根目錄同名,且在使用sftp上傳文件之前要手動在工作站上使用
mkdir
生成這個根目錄,根目錄下的其他子目錄會自動對應生成 - ignore:指定在使用
sftp: sync to remote
的時候忽略的文件及文件夾,注意每一行後面有逗號,最後一行沒有逗號
這是一個例子:(記住不能有任何註釋內容)
{ "host": "XX.XX.XX.XX", "port": 22, "username": "ubuntu", "protocol": "sftp", "privateKeyPath": "C:\\KEY\\private.ppk", "remotePath": "/home/ubuntu/myproject", "ignore": [ "**/.vscode/**", "**/.git/**", "**/log/**" ] }
配置完畢之後就可以在vscode中使用
sftp
的指令直接upload和download對應工程文件中的任何文件啦(對左側文件目錄中的文件或文件夾右鍵,菜單中可選),還可以配置自己的快捷鍵有一點需要注意的是:通過
sftp插件
上傳的pickle文件,在工作站上打開會報inscure的錯,如果是使用xshell連接工作站的且工作站是centos系統的(ubuntu也可以,但不知道怎麼安裝的,可以自行查一下),可以使用sudo yum install lrzsz
安裝指令,然後就可以使用rz
指令來上傳pickle文件;將工作站上的文件下載到本地則可以使用sz [文件名]
指令
更多信息可以參考vscode-sftp的github
博文內容更新時間:2018/7/16