作者:matrix
被围观: 3,344 次
发布时间:2021-10-07
分类:command Linux |
一条评论 »
线上代码有时候会需要部署到内网或者防火墙后面的本地服务器环境,这个时候发布代码或者调试都会造成不便。
使用环境
测试环境为 mac vscodewindows版本的操作相差不大。vscode作为ide编辑器,也作为文件管理工具来上传下载服务器文件。需要安装Remote - SSH插件完成这些功能。
目的
本地环境可以直接编辑操作远程服务器中的文件,当然这非常危险和忌讳!修改文件前你需要做备份然后灾难还原 :grin:路径也很清晰,通过中转来访问:
localhost -> jump -> target-service
本地电脑连接中转服务器,再通过中转服务器连接后端的target-service完成操作。
配置ssh
插件安装之后按F1键打开命令行,找到remote-ssh相关文件配置命令。或者可以......
作者:matrix
被围观: 2,978 次
发布时间:2021-09-03
分类:零零星星 |
一条评论 »
现在我需要svn或者git的提交同步到其他远程仓库(svn或git),也就是同步操作。这里的同步最小单位为单次的提交commit。配合之前的「使用git-svn管理svn仓库」可以完美解决这个问题,利用git来中转管理我们手上的仓库代码。场景:有多个相同代码的SVN仓库,我不想全部迁移到git。然而每次修改一个功能的代码就必须手动复制到其他的远程svn/git仓库上,代码相似但又不能直接替换。。。之前使用git cherry-pick可以解决这个问题,但是要单独给svn用就会很麻烦。尝试用git svn中转试试!
1. 本地添加远程仓库
如果是svn仓库,先使用git svn clone svn://xxx.com/xxx克隆svn仓库到本地
2. 本地添加远程仓库
添加远程SVN仓库:
没有找到命令行......
作者:matrix
被围观: 2,389 次
发布时间:2021-08-24
分类:兼容并蓄 |
无评论 »
git-svn工具是git对比较老的svn的兼容性支持,可以直接对svn仓库进行管理。git-svn内部其实是使用perl脚本处理svn命令,没有的话要重新安装git。之后就可以任意使用git的功能了,比如stash。mac环境下直接输入命令git svn --version检查是否可用。出现问题最好是重新安装svn和git:
$ brew reinstall subversion$ brew reinstall git
clone项目
$ git svn clone svn://username@svn.hhtjim.com/repos
修改&提交
这里和git仓库操作一致
$ git add .$ git commit -m "first commmit"
推送到远程仓库
使用git svn dcommit代替git push命令
$ git svn dcommit
查看本地仓库的svn地址信息
$ git svn info
参考:https://www.jianshu.com/p/6......
作者:matrix
被围观: 2,975 次
发布时间:2021-08-12
分类:兼容并蓄 |
无评论 »
使用git-svn管理svn项目每次操作都要输入密码 :oops:之前尝试过 echo password | git svn rebase来自动输入,还有删除~/.subversion/auth目录的方法都还是失败,不能达到免输入密码的效果。
办法
以mac为例,打开应用钥匙串访问,删除掉对应svn项目地址的钥匙串<svn://svn.XXXX:3690>密码。之后马上使用git svn命令操作,系统会自动保存新的密钥在钥匙串中。这样在任何程序操作之前去保存密码就可行。git-svn是读取系统保存的密钥,之所以有问题因为密钥是之前的程序授权的,现在使用git-svn也就无法读取。这样操作之后我这里其他程序没有影响,如果有问题的话可以自行到svn项目目录执行缓存密码凭证操作。
$ svn update --username......
作者:matrix
被围观: 4,806 次
发布时间:2021-07-31
分类:零零星星 |
2 条评论 »
不同的仓库可以互相同步其中任意提交的commit吗?可以的~现有仓库enc,qsui,dada。三个的代码基本相同但是没有新建分支来区别。本地会经常修改enc代码来提交到其远程仓库,但是其他仓库咋办?我不想每个再修改提交。
办法
大致思路就是本地仓库添加其他remote远程分支,本地抓取之后新建本地分支进行关联,再git cherry-pick合并提交到本地新的分支,之后push即可。
步骤
1.enc本地添加远程
$ git remote add dada https://git.weixin.qq.com/wx_wx8fffaa009d109aa1/dada.git$ git remote -v # 查看远程仓库分支
2.抓取到本地
$ git fetch dada
3.新建本地分支
$ git checkout -b dada dada/master #远程dada/master分支新建为本......
作者:matrix
被围观: 4,946 次
发布时间:2021-03-31
分类:mysql |
2 条评论 »
平时习惯使用mysql客户端工具直接导出表数据,这突然需要导出指定前缀的表反而变得麻烦,因为表非常多但又不想全部选择。e.g. 导出dict_开头的数据表
查询符合条件的表名
select table_name from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA = 'heal' and table_name like 'dict_%';
执行导出命令
mysqldump --column-statistics=0 -h 127.0.0.1 -P3306 -pPASSWORD -t heal -uroot --tables dict_union dict_tag > ~/db_script.sql
-P端口号-p密码--tables 指定多个数据表
报错 mysqldump: Couldn't execute
mysqldump: Couldn't execute 'SELECT COLUMN_NAME, JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"') ......
作者:matrix
被围观: 9,843 次
发布时间:2021-02-08
分类:零零星星 |
5 条评论 »
本地用miniconda创建的python环境,程序的打包和运行都是正常。但是搬到了其他电脑运行就是失败,死活报错Failed to execute script pyi_rth_certifi。尝试其他打包参数-p --datas --hidden-import,更换python版本和Pyinstaller的develop版本也一样。最后还是在cmd命令行打开调试才显示具体信息。删除dist/,build/目录再使用-c参数重新打包,之后从cmd执行程序才看到详细提示。最终并不是依赖的问题,只是因为运行环境缺少dll文件导致。😂
解决办法
安装OpenSSL库下载页面:https://slproweb.com/products/Win32OpenSSL.html默认安装之后就可以了参考:https://bugs.python.org/issue39344https://slproweb.com/products/Win32Open......
作者:matrix
被围观: 7,423 次
发布时间:2020-10-28
分类:command Linux |
一条评论 »
mac上使用ssh命令隧道转发访问内网会出现经常断连的情况,每次都需要重启窗口执行命令,没有windows上xshell上隧道设置来的简单好用。当然,后面我发现Termius.app支持端口转发后,依然觉得autossh的方式香~换用autossh来代替ssh,只需要添加-M参数用于设定监听的本地端口,本地不被占用的都可以。
autossh安装
autossh就用来解决断线重连的问题。测试环境为macosautossh安装:brew install autossh要自动免密码登录目前知道两个方法:
方法1 密钥登录
无密码密钥登录,配合autossh可以稳定使用。
方法2 autossh+expect
这里主要介绍自动输入密码的方式,可以解决各种场景的问题。使用autossh+expect的方式用脚本操作,支持ssh登录密码、......