jenkins
- 下載Jenkins
- 將jenkins.war 復(fù)制到Apache Tomcat下的webapps下面
- 啟動apache tomcat 將會自動將jenkins.war解壓到webapps下面,解壓結(jié)束之后
- 訪問jenkins
- 在系統(tǒng)管理發(fā)現(xiàn)反向代理設(shè)置錯誤時候,直接[ 系統(tǒng)設(shè)置 ],將下面的jenkins url后面的/jenkins去掉,問題解決
配置web hook 與jenkins
- 系統(tǒng)設(shè)置 --> 管理插件 --> 可選 -->搜索Generic Webhook Trigger -->安裝
- 在jenkins新建任務(wù),自由風(fēng)格 選用Git( 源碼管理 )
- 設(shè)置Generic WebHook Trigger 參數(shù)(設(shè)置好用戶名與密碼),保存
- 記住當(dāng)前的地址(jenkins task url)
- 到碼云上的項目中,在 管理 添加WebHooks 粘貼(jenkins task url)
- 進(jìn)行測試,通過,基本模式結(jié)束
注意利用ngrok對本機(jī)地址進(jìn)行反向代理,處理為公網(wǎng)地址,完成本地測試
Gitee插件的應(yīng)用:可以直接在任務(wù)中設(shè)置gitee的地址,生成密碼,直接使用配置插件項目的說明的地址和密碼,填充到碼云的webhook中直接可用,jenkins+gitee插件配置
自動化環(huán)境配置安裝
新建節(jié)點問題解決:
- 系統(tǒng)管理,系統(tǒng)安全配置,代理(隨機(jī)選?。?代理協(xié)議(Java Web Start Agent Protocal)
- 系統(tǒng)設(shè)置,節(jié)點管理,新建節(jié)點,節(jié)點名稱(復(fù)制,或者固定),設(shè)置基本參數(shù)(遠(yuǎn)程目錄,用法,啟動方式選擇
通過Java Web啟動代理 - 點擊保存launch上的slave-agent.jnlp文件,
- 發(fā)生找不到remoting.jar文件時候,將apache tomcat下面的remoting-xxx.jar復(fù)制到目標(biāo)路徑,一般相對于apache webapps下面的目錄路徑,并保存為remoting.jar,
- 啟動slave-agent.jnlp,建議使用管理員權(quán)限從cmd上啟動,之后安裝為服務(wù)
- 服務(wù)名稱:hebjubsskave-D_Slave
- 通過查看控制臺輸出結(jié)果進(jìn)行判定當(dāng)前運行結(jié)果如何
碼云對svn的支持只停留在傳輸與校驗上,無法支撐文件路徑的權(quán)限管理,放棄繼續(xù)的深究
以上為碼云+jenkins的可持續(xù)集成環(huán)境的探索
Git 使用與碼云
基本鏈接流程
-
安裝git
-
命令行設(shè)置(全局)信息
git config --global user.name "name"
git config --global user.email "email" -
初始化倉庫
git init -
添加文件
git add <file····> -
提交到倉庫
git commit -m <message> -
檢測狀態(tài)
git status直接顯示當(dāng)前本地倉庫中的文件變化情況 -
檢測文件變化
git diff <file>直接查看文件的修改內(nèi)容 -
歷史記錄
git log [--pretty=oneline]顯示變化的歷史記錄 -
回退版本
git reset --hard HEAD^回到上個版本
git reset --hard 1994ds回到特定的版本,版本號不需要 寫全,git能夠自動尋找,但是不能太簡單,一般選擇前幾位
git reset --hard commit_id -
修改與提交
第一次修改-->git add-->第二次修改-->git add-->git commitgit add 將修改的文件提交到暫存區(qū),之后才能加入到commit中的 -
撤銷修改
a.git checkout -- <file>撤銷修改,讓修改回到上一次git commit或者git add狀態(tài)
b.git reset head <file>將暫存區(qū)的修改撤銷掉,重新放回工作區(qū)
已經(jīng)添加到暫存區(qū)時候,先執(zhí)行b 之后執(zhí)行a -
刪除文件
git rm <file>刪除文件
手動刪除文件之后,git rm <file> 和git add <file>效果一致
git checkout -- <file>將刪錯的文件恢復(fù) -
遠(yuǎn)程倉庫
git remote add origin <(.git) url> -
推送
git push -u origin master將當(dāng)前分支master推送到遠(yuǎn)程,第一次推送的時候 -u git會把本地master分支內(nèi)容推送到遠(yuǎn)程新的master分支,還會把本地master和遠(yuǎn)程master分支關(guān)聯(lián)起來 -
創(chuàng)建分支
git checkout -b dev創(chuàng)建并切換到分支 (-b) -
查看分支
git branch [branchname]查看當(dāng)前分支,查看指定分支
git merge <branchname>合并分支到master中
git brach -d <name>刪除分支 -
沖突管理
git status或者直接commit時候查看沖突情況,手動修改沖突,完成提交與分支合并
master 分支盡可能保持穩(wěn)定,一般情況下選擇在其他分支上工作,到發(fā)布的時候在完成分支合并
合并分支--no--ff參數(shù)使用普通合并,合并后存在歷史分支,能看出來曾經(jīng)做過合并,fast forward則不行 -
Bug分支
git stash隱藏當(dāng)前工作現(xiàn)場,等恢復(fù)之后再繼續(xù)工作
git status
git checkout master
git merge --no-ff -m "merged bug fix 101" issue-101
git stash list查閱工作現(xiàn)場
git stash pop恢復(fù)工作現(xiàn)場,并刪除stach(可以git stach apply恢復(fù)之后,git stach drop刪除stach,可以用git stash apply stash@{0}指定處理目標(biāo)函數(shù)) -
協(xié)作開發(fā)
git remote -v查看分支情況
git push origin master推送分支到遠(yuǎn)程庫
git push origin dev(master 作為主分支,需要時刻與遠(yuǎn)程同步,dev 分支作為開發(fā)分支需要,與遠(yuǎn)程同步
git clone <url>將遠(yuǎn)程分支下載到本地
git checkout -b dev origin/dev將遠(yuǎn)程origin的dev分支到本地dev 上
git pull失敗需要進(jìn)行鏈接分支git branch --set-upstream-to <branch-name> origin/<branch-name> -
標(biāo)簽
git tag <name>打標(biāo)簽?zāi)J(rèn)使用HEAD(commit_id)
git log --pretty=oneline --abbrev-commit查閱目標(biāo)信息,找到版本號
git tag <name> <commit_id>給目標(biāo)commitid打上標(biāo)簽
git show <tagname>查看目標(biāo)標(biāo)簽信息
git tag查看所有標(biāo)簽
git tag -d <tagname>刪除目標(biāo)標(biāo)簽
git push origin <tagname>將標(biāo)簽推送到遠(yuǎn)程
git push origin --tags將所有未被推送的標(biāo)簽推送到遠(yuǎn)程
git push origin :refs/tags/<tagname>刪除目標(biāo)遠(yuǎn)程標(biāo)簽 -
.gitignore 細(xì)節(jié)配置
忽略特殊文件,
Template
記住密碼
ssh-keygen -t rsa -C "郵箱地址"
- 將生成的.ssh/rsa.pub文件的內(nèi)容復(fù)制添加到碼云上
- 進(jìn)入項目倉庫下的.git/config的[remote "origin"] ,修改遠(yuǎn)程連接屬性為如將
https://gitee.com/southgnss_mozh/DemoTest改為git@gitee.com:southgnss_mozh/DemoTest
沖突操作
主動選擇需要保留的內(nèi)容,替換到線上版本,在進(jìn)行接下來的提交操作
子模塊
#添加 git 子模塊
git submodule add repourl
初次clone帶有子模塊的倉庫如果想查看子模塊的內(nèi)容:
git submodule init
git submodule update
或者 git submodule update --init --recursive
# 更新子模塊地址
vi .gitmodules #修改url地址
git submodule sync
然后提交更改即可。
# 刪除子模塊
刪除 .gitsubmodule中對應(yīng)submodule的條目
刪除 .Git/config 中對應(yīng)submodule的條目
git rm --cached {submodule_path} # submodule_path即子模塊在倉庫下的路徑
git commit -m 'xxx'
git
C++ 基礎(chǔ)學(xué)習(xí)
- 復(fù)習(xí)C++的基礎(chǔ)語法,類型,定義,類的聲明實現(xiàn)操作,文件讀寫與簡單線程學(xué)習(xí)
- 學(xué)習(xí)C++本身抽象類,重載,重寫相關(guān)知識
- 簡單學(xué)習(xí)了STL 關(guān)于container容器的頭文件(vector,list,queue,stack,set,array,stack)