91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Subversion實現原理介紹及鉤子的使用

發布時間:2020-10-16 05:05:32 來源:網絡 閱讀:1787 作者:mrc_elite 欄目:開發技術

      這里不過多介紹svn的安裝、配置、使用。介紹一下Subversion的原理和工作機制。

      一、實現原理:Subversion是一種集中的分享信息的系統,它的核心是版本庫,它存儲所有的數據,版本庫按照文件樹形式存儲所有數據,包括所有的文件和目錄。任意數量的客戶端可以連接到版本庫,讀寫這些文件,通過寫數據,別人可以看到這些信息。通過讀數據,別人可以看到版本的修改。

    二、工作機制

        1、每個工作拷貝都會保留一份基準版本。

        2、只要在該基準版本有過修改,所屬的本層文件以及所有的父級文件夾都會呈現出來修改標志。

        3、update成功時,基準版本會變成服務器的head版本。

        4、如果提交成功,服務器的head版本變為用戶提交基準版本。

        5、revert操作都是將工作區恢復到基準版本。

        6、merge操作即是對兩個不用的版本數進行比較,然后將不同應用拷貝到另一個版本數中

    三、svn的pre-commit鉤子   

 #!/bin/sh
 #自動同步鉤子
 REPOS="$1"
 REV="$2"
    
 export LANG=en_US.UTF-8
 SVN=/usr/bin/svn
 WEBDIR=/var/www/webroot   
 $SVN update $WEBDIR --username dev-user --password dev123 -- no-auth-cache 2>1 /root/svn_post_commit.log

    四、svn的post-commit文件做提交時語法檢查和svn log檢驗

#!/bin/sh
REPOS="$1"
TXN="$2"

SVNLOOK=/usr/bin/svnlook

LOGMSG=`/usr/bin/svnlook log -t "$TXN" "$REPOS"|grep "[a-zA-Z0-9]"|wc -c`
if [ "$LOGMSG" -lt 20]; then
    echo $LOGMSG 1>&2
    echo -e "\nmust input log message and length larger than 20" 1>&2
    exit 1
fi

PHP="/usr/bin/php"
FILES=$($SVNLOOK changed -t "$TXN" "$REPOS" | awk '/^[AU]/ {print $NF}')
HASERROR=0
for FILE in $FILES; do
    CONTENT=$($SVNLOOK cat -t "$TXN" "$REPOS" "$FILE")
    if echo "$CONTENT" | grep -q $'var_dump'; then
        echo "######Debug Code found :$FILE#########" 1>&2
        echo "Please remove var_dump from $FILE" 1>&2
        HASERROR=1
    fi
    if [[ "$FILE" =~ \.(php)$ ]]; then
        MESSAGE=$(echo "$CONTENT" | $PHP -l 2>&1)
        if [ $? -ne 0 ]; then
            echo "######Error found :$FILE#########" 1>&2
            echo "$MESSAGE"  1>&2
            HASERROR=1
        fi
    fi
done
if [$HASERROR -eq 1]; then
    exit 1
fi


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

自贡市| 班玛县| 毕节市| 南丹县| 富平县| 永修县| 观塘区| 宁晋县| 修文县| 丹棱县| 遂宁市| 宽甸| 防城港市| 雷山县| 莲花县| 台江县| 和政县| 苏尼特右旗| 嘉禾县| 阆中市| 松原市| 丽江市| 锦屏县| 沂源县| 南郑县| 高雄县| 涞源县| 南靖县| 宜昌市| 无极县| 奉新县| 萨迦县| 泰州市| 镇江市| 兰西县| 游戏| 高要市| 屯门区| 台北县| 沾化县| 南乐县|