git打标签脚本
[TOC]
用git做发布管理至少涉及到两类分支:开发分支和发布分支。每次发布新内容都会基于指定的发布分支打一个tag,而tag通常会以1.0.0的形式命名。
若发布内容存在差异,则需要管理多个发布分支
releasse_x/1.0.0
releasse_y/1.1.0
releasse_z/1.1.5
...
git打标签的流程
# 1. 切换到目标分支
git checkout [需要打标签的分支]
# 2. 合并各项修改内容到分支
git merge feat-xxx
git merge bug-xxx
...
# 3. 定义标签
git tag [标签名称/版本号]
# 4. 该标签提交到哪个仓库
git push --set-upstream origin [标签名称]...
Click to read more ...
git笔记
目录
官方文档
设置 SSH Proxy
设置http&https Proxy
换行符设置
git命令行中显示中文字符
忽略文件权限变化检查
status和log命令显示中文字符
git fetch时报错would clobber existing tag
rebase
子模块的在父工程引用的问题
github flow
cherry-pick
工作目录与裸仓库
HEAD
特殊的符号
tag间的差异内容
vimdiff&vimmerge常用命令
以密钥访问Git
git常用大杂烩
不要对git抱有信仰
git要适配工作流,如果不能提高流程的效率,不要试图推行git
本文不是一个教程文章...
Click to read more ...
wsl2搭建centos、docker mongo
wsl安装centos
wsl推出的早期,官方并没有提供centos镜像,民间方案大多是使用CentWSL。wsl2推出后,官方有了centos方案Import any Linux distribution to use with WSL,安装过程需要一些动手能力,安装说明非常详尽,本文不用过多复述。PS:截至到2024.3.1,centos并未上架microsoft store。
以下几点需要非常注意:
确保你的window系统版本支持wsl2 WSL enabled with a Linux distribution installed running WSL 2,从未安装参考官方文档How to install Linux on Windows with WSL
确保...
Click to read more ...
docker笔记
[TOC]
debian 12 安装docker官方说明文档
centos 7|8|9 安装docker官方说明文档
镜像
查询镜像是否存在 docker search IMAGE_NAME
拉取网上镜像 docker pull IMAGE_NAME:TAG
删除镜像 docker rmi [IMAGE_NAME/IMAGE_ID]
查看镜像 docker images
保存镜像 docker save IMAGE_ID > OUT_PUT_FILENAME.tar
加载镜像 docker load -i OUT_PUT_FILENAME.tar
利用Dockerfile文件创建镜像
在当前目录查找dockerfile,并以TAG_NAME来命名新创建的镜像
...
Click to read more ...
jenkins插件Active Choices Plug-in使用心得
软件环境
Active Choices Plug-in 2.7.2
Jenkins 2.414.1 (docker: jenkins/jenkins:lts-jdk11)
Groovy中调用shell
// Choice下拉列出当前工作目录的所在子目录
def proc = "ls".execute()
proc.waitFor()
def output = proc.in.text
return output.split("\n") as ArrayList
Input text box 不可编辑
Input text box是Active Choices Reactive Reference Parameter里的一个选项,但它的使用非常奇怪。官方wi...
Click to read more ...
SourceTree自定义菜单命令 拉取所有仓库最新代码
技术和测试同事会在自己的电脑里,同时搭建前后端环境。但前端技术不会去关注后端的内容,只在需要的时候拉取最新后端内容。但是当工程包含多个外部代码仓库时,同事不熟悉工程结构难免偶尔会漏掉更新其中的某些仓库,导致运行异常浪费排查时间。对于这种只管拉取各个仓库最新代码,且不会去做任何修改和切换分支的情况,提供一键拉取所有仓库最新版本的脚本会更为适合。以下是一个仅支持git和svn仓库更新的模版脚本,
# file: YOUR_PROJ_ROOT/xxx/update_all_repo.sh
function git_repo() {
dir=$1
cd $dir
echo "branch: "`git branch --show-current`
git pu...
Click to read more ...
包装skynet.call&send远程调用接口
从语法层的来看,方法调需要涉及三项内容,目标对象、方法名和参数。对于远程调用来讲,还需要一项,即目标对象所处的位置。所处位置是一个抽象的说法,它可能是物理设备、节点实例、服务实例等标识ID,对于本文谈及的skynet来说,它是服务的标识ID。
不论本地还是远端服务,skynet统一使用skynet.call或send,第一个参数指向服务实例标识ID(再次强调不论本地/远端),第三个参数指向调用该service的方法名称,从第四个开始后面参数是传给远端的参数。读者可能注意到这里跳过第二个参数的说明,是因为它与本文讨论的问题无关,忽略它并不影响本文内容的理解。
基于skynet实现一套业务框架,在接口隔离性方面,我有几点考虑
skynet作为一个具体的实现,其提供的底层接口尽可能...
Click to read more ...