Shell 自動拉取 git 分支,mvn 打包,部署遠端除錯的指令碼
#!/bin/bash
chose_branch=$1
server_list=("axxxx" "axxxxxxxx")
srcDir='/usr/xxxxxx/xxxxxx/'
function add_ssh_key()
{
cd ~/.ssh/
ssh-agent bash
ssh-add id_rsa_xxxxxx
}
function change_config()
{
sed -i "s/xxx=.*/xxx=$XXX/g" $xxxx_conf
}
function clone_gitcode()
{
if [[ "$chose_branch" = "master" ]]; then
git_pull_master;
elif [[ "$chose_branch" = "dev" ]]; then
git_pull_dev;
else
git_pull_master;
fi
}
# git 拉取 master 分支
function git_pull_master()
{
cd /usr/xxxxx
rm -rf xxx
git clone [email protected]:xxxx/xxxx.git
cd xxxx
git checkout master
}
function mvn_server ()
{
for dir in ${server_list[@]}
do
dirFile=$srcDir$dir;
if [ -d $dirFile ]&&[[ $dir != script* ]]&&[[ $dir != data* ]]; then
cd $dirFile;
mvn clean install;
fi
done;
}
function stopall()
{
for server in ${server_list[@]}
do
pid=`ps -ef|grep $server|grep -v "grep"|awk '{print $2}'`
kill -9 $pid
npid=`ps -ef|grep $server|grep -v "grep"|awk '{print $2}'`
if [ "$npid" == "" ]; then
echo -e "pid of $1 is killed SUCCESSFULLY!!!"
else
echo -e "pid of $1 is NOT killed !!!"
fi
done
}
i=10000
function startall()
{
for serv in ${server_list[@]}
do
cd $srcDir$serv/target;
nohup java -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=$i,server=y,suspend=n -jar $serv.jar &
i=$(($i+1))
npid=`ps -ef|grep $serv|grep -v "grep"|awk '{print $2}'`
if [ "$npid" != "" ]; then
echo -e "pid of $serv is started SUCCESSFULLY!!!"
else
echo -e "pid of $serv is NOT started !!!"
fi
done
}
echo -e "-------新增 SSH-Key-------"
# add_ssh_key;
echo -e "-------更新程式碼-------"
clone_gitcode;
echo -e "--------changing config --------"
change_config;
echo -e "-------編譯中:-----------"
mvn_server;
echo -e "------- restarting server -------"
stopall;
startall;
相關推薦
Shell 自動拉取 git 分支,mvn 打包,部署遠端除錯的指令碼
#!/bin/bash chose_branch=$1 server_list=("axxxx" "axxxxxxxx") srcDir='/usr/xxxxxx/xxxxxx/' functi
【git之窗】(十七)線上問題如何拉取緊急分支
一、前提 通常使用git,都會在上線前把程式碼合併到master分支,在master上打好tag,由上線tag、回退tag確保上線正常。 例如: 上線tag: V
git 拉取某個分支到本地
比如我想拉取dev到本地來 通常情況下,我會先直接嘗試:git clone https://github.com/XXXX/nothing2/tree/dev.git 會報這種錯誤:fatal: repository 'https://github.com/XXXX/
git從遠端倉庫中拉取指定分支
若本地分支不存在的情況: git checkout -b 本地分支名稱 origin/遠端分支名稱 使用該方式會在本地新建分x,並自動切換到該本地分支. git fetch origi
git合併遠端拉取的分支與本地修改的分支
可以先用git stash暫存本地修改的部分,然後使用git pull拉取遠端分支,隨後使用git stash pop彈出本地修改部分,此時git會自動合併。 如果出現CONFLICT (content): Merge conflict in XX可以使用git merge
mac使用終端,拉取git上的工程
首先在終端開啟你想要放工程的地方,比如說桌面,cd Desktop/ 回車後輸入指令:Desktop wy$ git clone https://git.coding.net/mindasset/li
git 拉取指定分支 pull 本地不存在的分支
預設,git專案只有一個分支,就是master,我們當然可以在本地建立多個分支,並推送到遠端git管理平臺上,或者將遠端git管理平臺上的其他分支拉取到自己電腦上。 一、檢視本地已有的分支 進入到專案根目錄,開啟命令列/終端,輸入指令,將會顯示該專案的本地的全部分支,其中
jenkins 拉取 git 代碼成功版本
版本 png article 技術分享 http 所在 com 在服務器 公鑰 1、首先把git上用戶rlp ,郵箱[email protected]生成公鑰,(jenkins所在服務器上執行)復制到git的setting中見。。。。 2、寫git代碼的地址: 3、配置 註
自開發自動拉群微信雲控系統,一鍵全自動拉群
target parse mes 是否 中文 number master 數字 ttr 微信自動拉群雲控系統源碼,全自動一鍵拉群。自動統計新加的好友,自動將所有新加好友一鍵拉群。服務器端下發群二維碼,手機端一鍵拉群。全自動大批量,同時拉群。 在系統的開發實現過程中,除了服
自開發自動拉群微信雲控系統,可實現全自動一鍵拉群
tco key return cati 劃線 除了 com off shm 微信自動拉群雲控系統源碼,全自動一鍵拉群。自動統計新加的好友,自動將所有新加好友一鍵拉群。服務器端下發群二維碼,手機端一鍵拉群。全自動大批量,同時拉群。 在系統的開發實現過程中,除了服務器端推送指
Jenkins - SSH認證方式拉取Git代碼
appium cimage fop rsa 2nf ica continue d+ same 1、本地生成密鑰 [root@root ~] ssh-keygen -t rsa Generating public/private rsa key pair. Enter fil
拉取Git程式碼到本地
(1) 直接下載git上的原始碼壓縮包(.zip壓縮包/.rar壓縮包):找到準備下載的專案檔案,下載到本地,解壓縮,使用phpstorm開啟; (2) 本地配置git環境,直接使用git命令拷貝到本地,然後使用phpstorm開啟——git命令:cd/儲存路
SSH認證方式拉取Git程式碼
1、本地生成金鑰 [[email protected] ~] ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Ent
Windows下Jenkins自動拉取編譯SVN專案併發布Tomcat和Jboss
本文主要記錄一些重要的配置,忽略Jenkins的安裝。配置主要分為三個重要部分: 1、外掛配置 主要涉及3個外掛的安裝。 Deploy to container Plugin:This plugin takes a war/ear
linux下實現svn自動拉取程式碼併發布
正常在釋出專案的時候是將專案打包成war包,並將程式碼上傳到伺服器中,執行伺服器,整個過程較為複雜,在測試過程中會涉及到多次程式碼的修改,重新打包釋出,這樣就很不友好,接下來就簡單介紹一種方法,只要執行一個shell指令碼檔案就能把整個過程全部搞定。 第一步:安裝svn
利用 Webhooks 實現程式碼的自動拉取
很長時間沒有更新部落格了,前段時間一直都在忙著找工作,最近才穩定下來,後面有機會的話再說說找工作的經歷。 以前做完一個專案,要放到伺服器上執行,最開始使用 Xftp 將程式碼傳上去,中間如果需要修改程式碼,都是在本地除錯完再傳到伺服器,覆蓋原來的檔案生效,非常
git 分支合併到主幹,將分支所有提交匯總合並
git在一個分支上開發一段時間後,會留下很多次的commit, 當一個功能階段性的完成後,需要將該分支merge到主幹,如果直接使用 git merge branch 會將該分支下所有的提交都merge到主幹,有時這並不是我們所需要的,我們只需要總結一下該分支,然後以
kubernetes實戰篇之建立金鑰自動拉取私服映象
系列目錄 前面我們講解了如何搭建nexus伺服器,以及如何使用nexus搭建docker私有映象倉庫,示例中我們都是手動docker login登陸私服,然後通過命令拉取映象然後執行容器.然而這種做法在kubernetes叢集中是不可行的.第一,專案規模不同,每天產生的映象數量也不同,如果每天產生大量倉庫
Jenkins教程(三)新增憑據與流水線拉取Git程式碼
前言 本文旨在配置憑據、使用Git倉庫中的Jenkinsfile與使用宣告式流水線拉取Git程式碼 使用SVN等其他版本控制工具,請參考使用Pipeline-Syntax生成對應程式碼塊 憑據(credentials)是什麼 憑據(credentials)是訪問其他系統的認證資訊,可以是賬號/密碼、SSH
xmake v2.5.2 釋出, 支援自動拉取交叉工具鏈和依賴包整合
[xmake](https://github.com/xmake-io/xmake) 是一個基於 Lua 的輕量級跨平臺構建工具,使用 xmake.lua 維護專案構建,相比 makefile/CMakeLists.txt,配置語法更加簡潔直觀,對新手非常友好,短時間內就能快速入門,能夠讓使用者把更多的精力集