소스 검색

批量更新库

jsonwang 3 년 전
부모
커밋
191729bca0
1개의 변경된 파일69개의 추가작업 그리고 0개의 파일을 삭제
  1. 69 0
      gitpulls.sh

+ 69 - 0
gitpulls.sh

@@ -0,0 +1,69 @@
+#!/bin/bash
+
+#echo $0    # 当前脚本的文件名(间接运行时还包括绝对路径)。
+#echo $n    # 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是 $1 。
+#echo $#    # 传递给脚本或函数的参数个数。
+#echo $*    # 传递给脚本或函数的所有参数。
+#echo $@    # 传递给脚本或函数的所有参数。被双引号 (" ") 包含时,与 $* 不同,下面将会讲到。
+#echo $?    # 上个命令的退出状态,或函数的返回值。
+#echo $$    # 当前 Shell 进程 ID。对于 Shell 脚本,就是这些脚本所在的进程 ID。
+#echo $_    # 上一个命令的最后一个参数
+#echo $!    # 后台运行的最后一个进程的 ID 号
+
+usage () {
+    echo "e.g. ./gitpulls.sh master master master master master master
+    使用说明,参数要和下面库顺序一致,自动切换分支并更新如下库:
+    BFAnalyzeKit
+    BFCommonKit
+    BFFramework
+    BFMaterialKit
+    BFNetRequestKit
+    BFUIKit"
+    echo "参数为空或个数不对,查看使用说明。"
+    exit 0
+}
+echo '正确参数为6个,现输入:' $# '个' 
+if (($# < 6)); then
+    usage
+fi
+ 
+
+##更新所有库,1,进入到指定目录,2,切换指定分支,3,更新代码 4,回到上层目录
+cd ../BFAnalyzeKit
+git checkout $1
+git pull
+cd ..
+
+cd ./BFCommonKit
+git checkout $1
+git pull
+cd ..
+
+cd ./BFFramework
+git checkout $1
+git pull
+cd ..
+
+cd ./BFCommonKit
+git checkout $1
+git pull
+cd ..
+
+cd ./BFMaterialKit
+git checkout $1
+git pull
+cd ..
+
+cd ./BFNetRequestKit
+git checkout $1
+git pull
+cd ..
+
+cd ./BFUIKit
+git checkout $1
+git pull
+cd ..
+ 
+
+echo "pull is done ..."
+