背景
#10 引发批量手工嗯哼 orphan 分支时:
「 Zooꪔ.ོQuiꫀt Ӫ: 「 其林: 正在迅速建孤子分支中,其他权限都配好了 」
- - - - - - - - - - - - - - -
「 沥川: 有没有批量生成孤子分支的方法啊啊啊... 」
- - - - - - - - - - - - - - -
是也乎,( ̄▽ ̄)
必须有的...
一个自动化脚本就可以的... 」
- - - - - - - - - - - - - - -
目标
跟随蠎营运营, 及时发现问题, 厘定边界:
- 快速寻找即有工具
- 或开发支援工具:
- 到目录 toola
追踪
orphanor
自动化孤子分支创建器
设想:
- CLI 交互
- 在 master 分支
- 输入 分支名
- 自动化完成分支创建/初始化
- 回到 master
- br -a 汇报
Usage
# 进入 py(为例, 也可为其他)仓库中 master 分支
$ cd <file folder>
$ git clone git@gitlab.com:101camp/py.git
$ cd py
$ /bin/sh path{orphanor.sh} orphan_name # 参数一为 orphanor.sh 路径, 参数二为 孤子分支 名称
Todo
- 接收一个文本文件, 自动批量完成多个 学员 orphan 分支的建立
- 建立好后, 对应的可以生成每个学员提醒邮件的正文呢?
- 远程调用/slack 命令激活 …
尝试
学习 shell 命令基本操作
- 写第一个 shell 脚本
打开文本编辑器(可以使用 vi/vim 命令来创建文件),新建一个文件 test.sh
#!/bin/bash
echo "Hello World !"
- 执行 shell 脚本
方法一: 作为可执行程序
将上面的代码保存为 test.sh,并 cd 到相应目录:
chmod +x ./test.sh #使脚本具有执行权限
./test.sh #执行脚本
方法二: 作为解释器参数
/bin/sh test.sh
由于方式二比较简单, 故选择
- 传递参数
我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n。n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推……
ex.
#!/bin/bash
echo "Shell 传递参数实例!";
echo "执行的文件名:$0";
echo "第一个参数为:$1";
echo "第二个参数为:$2";
echo "第三个参数为:$3";
结果如下:
$ chmod +x test.sh
$ ./test.sh 1 2 3
Shell 传递参数实例!
执行的文件名:./test.sh
第一个参数为:1
第二个参数为:2
第三个参数为:3
完成孤子分支创建/初始化
利用上面知识即可完成任务
# orphanor
#!/bin/bash
git checkout --orphan $1
git rm -rf .
echo "#Title of Readme" > README.md
git add README.md
git commit -a -m "Initial Commit"
git push --set-upstream origin $1
git checkout master
git branch -a
自动创建孤子分支
$ cd <file folder>
$ git clone git@gitlab.com:101camp/py.git
$ cd py
$ /bin/sh path(orphanor.sh) orphan_name
参考
Chnagelog
- 2018-12-26 Lichuan init.