zoukankan      html  css  js  c++  java
  • 脚本方式同步gitlabA与B

    sh脚本下载gitlab-A的代码,

    exp脚本自动读入gitlab-B的用户名及密码,提交实现同步.

    $ cat ai_sdk_middleware.sh 

    #!/bin/bash

    cd /opt/gitlabmirror-repo/Faceline

    git clone ssh://git@gitlab.xxxxxx.com:9022/faceline/ai_sdk_middleware.git

    cp ai_sdk_middleware.exp ai_sdk_middleware/

    git branch -r | grep -v '->' | while read remote; do git branch --track "${remote#origin/}" "$remote"; done

    git fetch --all

    git pull --all

    cd ai_sdk_middleware

    git fetch --all

    git pull --all

    echo '*.exp' >> .git/info/exclude

    $ cat ai_sdk_middleware.exp

    #!/usr/bin/expect -f

    set user "root"

    set pwd "1qaz1qaz"

    spawn git remote rename origin old-origin

    spawn git remote add origin http://172.16.2.42:8099/faceline/ai_sdk_middleware

    spawn git push -u origin --all 

        expect "Username*"

        send "$user "

        expect "Password*"

        send "$pwd "

        expect eof

    spawn git push origin  --tags --force 

        expect "Username*"

        send "$user "

        expect "Password*"

        send "$pwd "

        expect eof

    定时同步:

    * 6 * * * /opt/gitlabmirror-repo/Faceline/ai_sdk_middleware.sh && cd /opt/gitlabmirror-repo/Faceline/ai_sdk_middleware && /usr/bin/expect -f ai_sdk_middleware.exp >/dev/null 2>&1

    结束。

  • 相关阅读:
    vim tab转换成space
    vs计算项目代码总行数
    读取xml文件
    复选框全选、取消全选
    网页上用js禁用鼠标右键
    腾讯、微软、亚马逊测试站点
    限制文本域输入字符个数,即使显示输入字符数和剩余字符数,超出不显示!
    DataUtil
    DES加密解密类
    JsonHelper(Json帮助类)
  • 原文地址:https://www.cnblogs.com/liusingbon/p/12983813.html
Copyright © 2011-2022 走看看