前言
在實際開發中,我們很頻繁的需要從git遠程倉庫拉取master代碼建立分支進行開發,開發完畢後,我們需要push到遠程進行build、部署和測試,這裡博主根據自己的情況,編寫了一個git腳本,讓我們只需要關心開發代碼,至於開發代碼前的git操作步驟自動化完成~(關於博主的另外一篇git的博客:《工程化專題之Git》)
一個自動化腳本
![分享工作中常用的一個Git腳本](http://p2.ttnews.xyz/loading.gif)
git腳本1-26行
運行這個git腳本,需要項目名/git clone url/你的開發分支名稱(比如feature/xxx)
![分享工作中常用的一個Git腳本](http://p2.ttnews.xyz/loading.gif)
git腳本27-46行
上面腳本的意思,就是想在特定的目錄中,進行git clone,並從master新建本地開發分支。
git腳本47-62行
把本地開發分支push到遠程,並建立它們之間的關聯關係,之後就可以打開idea進行開發啦~
運行結果
運行腳本參數不正確
運行正常
目錄查看確認
腳本內容
#!/bin/sh
#腳本執行需要3個參數
if [ $# -eq 3 ]
then
echo "開始執行git腳本..."
echo "項目名:$1 , git克隆地址:$2 , 你的新建分支名稱:$3"
else
echo "腳本執行需要3個參數:項目名 git克隆地址 你的新建分支名稱"
exit -1
fi
#獲取當前執行腳本路徑
dir=`pwd`
#獲取今天的日期,格式:yyyymmdd
time=`date +%Y%m%d`
#項目名
project=$1
#git clone 地址
gitcloneurl=$2
#你的本地分支名稱
feature=$3
#刪除目錄,為新建目錄做準備
rm -rf "${project}-${time}"
mkdir "$dir"/"${project}-${time}"
cd "$dir"/"${project}-${time}"
#git clone
git clone "$gitcloneurl"
if [ $? -ne 0 ]; then
echo "git clone url 錯誤"
exit -1
fi
#切換到項目根目錄
cd "$dir"/"${project}-${time}"/"${project}"
#從master新建本地分支
git checkout -b "$feature"
#git push,創建遠程分支
git push origin "$feature":"$feature"
if [ $? -ne 0 ]; then
echo "git push 錯誤"
exit -1
fi
#建立本地分支與遠程分支的關聯關係,為push做準備
git branch --set-upstream-to=origin/"$feature"
#查看分支建立情況
git branch -vv
echo "you can open IntelliJ IDEA to write Java code..."
到這裡,就結束了,希望對你有幫助,^_^
本號已開設如下二十大專題,歡迎關注查看相關專題!
- 【springboot專題】【spring源碼】
- 【mysql優化專題】【HTTP協議】
- 【架構技術專題】【多線程專題】
- 【dubbo專題】【dubbo源碼專題】
- 【JVM調優專題】【HTTP專題】
- 【設計模式專題】【高併發專題】
- 【架構技術專題】【Lucene專題】
- 【數據結構專題】【redis專題】
- 【mq中間件專題】【netty專題】
- 【java面試專題】【zookeeper】
悶騷的大屌程序員富一代們↓↓↓↓
閱讀更多 java進階架構師 的文章