jenkins 碼云 GIT 與C++

jenkins

  1. 下載Jenkins
  2. 將jenkins.war 復(fù)制到Apache Tomcat下的webapps下面
  3. 啟動apache tomcat 將會自動將jenkins.war解壓到webapps下面,解壓結(jié)束之后
  4. 訪問jenkins
  5. 在系統(tǒng)管理發(fā)現(xiàn)反向代理設(shè)置錯誤時候,直接[ 系統(tǒng)設(shè)置 ],將下面的jenkins url后面的/jenkins去掉,問題解決

配置web hook 與jenkins

  1. 系統(tǒng)設(shè)置 --> 管理插件 --> 可選 -->搜索Generic Webhook Trigger -->安裝
  2. 在jenkins新建任務(wù),自由風(fēng)格 選用Git( 源碼管理
  3. 設(shè)置Generic WebHook Trigger 參數(shù)(設(shè)置好用戶名與密碼),保存
  4. 記住當(dāng)前的地址(jenkins task url)
  5. 到碼云上的項目中,在 管理 添加WebHooks 粘貼(jenkins task url)
  6. 進(jìn)行測試,通過,基本模式結(jié)束

注意利用ngrok對本機(jī)地址進(jìn)行反向代理,處理為公網(wǎng)地址,完成本地測試


Gitee插件的應(yīng)用:可以直接在任務(wù)中設(shè)置gitee的地址,生成密碼,直接使用配置插件項目的說明的地址和密碼,填充到碼云的webhook中直接可用,jenkins+gitee插件配置


自動化環(huán)境配置安裝

新建節(jié)點問題解決:

  1. 系統(tǒng)管理,系統(tǒng)安全配置,代理(隨機(jī)選?。?代理協(xié)議(Java Web Start Agent Protocal)
  2. 系統(tǒng)設(shè)置,節(jié)點管理,新建節(jié)點,節(jié)點名稱(復(fù)制,或者固定),設(shè)置基本參數(shù)(遠(yuǎn)程目錄,用法,啟動方式選擇通過Java Web啟動代理
  3. 點擊保存launch上的slave-agent.jnlp文件,
  4. 發(fā)生找不到remoting.jar文件時候,將apache tomcat下面的remoting-xxx.jar復(fù)制到目標(biāo)路徑,一般相對于apache webapps下面的目錄路徑,并保存為remoting.jar,
  5. 啟動slave-agent.jnlp,建議使用管理員權(quán)限從cmd上啟動,之后安裝為服務(wù)
  6. 服務(wù)名稱:hebjubsskave-D_Slave
  7. 通過查看控制臺輸出結(jié)果進(jìn)行判定當(dāng)前運行結(jié)果如何

碼云對svn的支持只停留在傳輸與校驗上,無法支撐文件路徑的權(quán)限管理,放棄繼續(xù)的深究

以上為碼云+jenkins的可持續(xù)集成環(huán)境的探索


Git 使用與碼云


基本鏈接流程
  1. 安裝git
  2. 命令行設(shè)置(全局)信息
    git config --global user.name "name"
    git config --global user.email "email"
  3. 初始化倉庫
    git init
  4. 添加文件
    git add <file····>
  5. 提交到倉庫
    git commit -m <message>
  6. 檢測狀態(tài)
    git status 直接顯示當(dāng)前本地倉庫中的文件變化情況
  7. 檢測文件變化
    git diff <file> 直接查看文件的修改內(nèi)容
  8. 歷史記錄
    git log [--pretty=oneline] 顯示變化的歷史記錄
  9. 回退版本
    git reset --hard HEAD^回到上個版本
    git reset --hard 1994ds回到特定的版本,版本號不需要 寫全,git能夠自動尋找,但是不能太簡單,一般選擇前幾位
    git reset --hard commit_id
  10. 修改與提交
    第一次修改-->git add-->第二次修改-->git add-->git commit git add 將修改的文件提交到暫存區(qū),之后才能加入到commit中的
  11. 撤銷修改
    a.git checkout -- <file> 撤銷修改,讓修改回到上一次git commit 或者 git add 狀態(tài)
    b. git reset head <file>將暫存區(qū)的修改撤銷掉,重新放回工作區(qū)
    已經(jīng)添加到暫存區(qū)時候,先執(zhí)行b 之后執(zhí)行a
  12. 刪除文件
    git rm <file> 刪除文件
    手動刪除文件之后,git rm <file> 和git add <file>效果一致
    git checkout -- <file> 將刪錯的文件恢復(fù)
  13. 遠(yuǎn)程倉庫
    git remote add origin <(.git) url>
  14. 推送
    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)起來
  15. 創(chuàng)建分支
    git checkout -b dev 創(chuàng)建并切換到分支 (-b)
  16. 查看分支
    git branch [branchname] 查看當(dāng)前分支,查看指定分支
    git merge <branchname> 合并分支到master中
    git brach -d <name> 刪除分支
  17. 沖突管理
    git status 或者直接commit時候查看沖突情況,手動修改沖突,完成提交與分支合并
    master 分支盡可能保持穩(wěn)定,一般情況下選擇在其他分支上工作,到發(fā)布的時候在完成分支合并
    合并分支 --no--ff參數(shù)使用普通合并,合并后存在歷史分支,能看出來曾經(jīng)做過合并,fast forward則不行
  18. 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ù))
  19. 協(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>
  20. 標(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)簽
  21. .gitignore 細(xì)節(jié)配置
    忽略特殊文件,
    Template

記住密碼
  1. 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í)

  1. 復(fù)習(xí)C++的基礎(chǔ)語法,類型,定義,類的聲明實現(xiàn)操作,文件讀寫與簡單線程學(xué)習(xí)
  2. 學(xué)習(xí)C++本身抽象類,重載,重寫相關(guān)知識
  3. 簡單學(xué)習(xí)了STL 關(guān)于container容器的頭文件(vector,list,queue,stack,set,array,stack)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容