1 Git
1.1 Git 概述
Git(讀音爲/gɪt/。)是一個開源的分佈式版本控制系統,可以有效、高速的處理從很小到非常大的項目版本管理。 Git 是 Linus Torvalds 爲了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟件。
1.2 Git 的服務器地址
- 國內git服務器地址:https://gitee.com/
- 國外git服務器地址:https://github.com/
兩個gitee帳號mayaole&mayaole2
1.3 Git原理圖
2 實戰
- 這裏使用IDEA內置的git功能來講解使用
- 在學習前先安裝 git管理工具到本地
- git工具默認安裝的路徑如下圖,安裝完後把bin目錄添加path變量中,在終端可以查看git工具的版本號
2.1 工作時開發的注意事項
- 代碼需要備份【主要是防止代碼丟失】
- 每個大版本都需要備份分支持【主要是1.0出現問題時,不能在2.0的版本上修復】
- 每天上午上班,要從服務器下載最新的代碼到本地
- 每天下午下班前,把自己的代碼提交到服務器
- 團隊開發時需要解決文件衝突問題
2.2 commit,push,branches,master講解
掌握每一個使用步驟的原理
Step 1:
- 安裝Git工具後在IEDA裏的配置git的命令執行路徑
Step 2:
- 在碼雲上創建空白的Java倉庫,用於存儲工作中開發的代碼備份
Step 3:
- 上傳本地空項目到碼雲上,讓倉庫擁有一個項目結構
- 在IEDA中創建一個同名JavaWeb項目
- 在src目錄中隨便先在某個包下創建個Servlet
- 在gitee中,找到上傳文件
- 然後把桌面gyfdemo01目錄下的文件上傳到git網站中
Step 4:
- 在IDEA中從碼雲下載項目,下載的地址就是在git中克隆的位置
- https://gitee.com/mayaole/gyfdemo01.git
- 以後就在這個倉庫上開發
- 找到VCS,選擇git,表示從服務器下載代碼
- 然後把git的倉庫地址複製,如圖,然後點clone複製份到本機桌面的某個文件夾下
這前的空項目就不再用了
- 克隆後如下圖:
Step 5:
- 添加定單功能,多寫個OrderServlet文件
- 新創建一個文件時,把有下面的彈窗口,選擇Yes
如果不小心選中了No,可以通過另一種方式添加到本地倉庫緩存
如圖,點擊文件右鍵
Step 6:
- 提交代碼並寫上備註到主杆
Step 7:
- 再次任意修改添加文件,然後提交
Step 8:
- 把代碼推到服務器
在推的過程中,會彈出輸入git服務器的用戶名和密碼,輸入即可
推送成功後,在碼雲服務器會看到更新的功能
Step 9:
- 再寫點功能,再寫個UserService提交,然後發佈1.0版本,添加分枝
- 選擇創建分枝
- 新創建一個分枝
Step 10:
- 切換回主杆
Step 11:
- 在主杆上進行2.0的開發,添加郵件發送功能
Step 12:
- 切換回1.0分枝,進行Bug修復,然後提交
Step 13:
- 推1.0代碼到服務器
Step 14:
- 不要忘記把主杆也推上服務器,先切換回主杆,再push
Step 15:
- 將master分枝與1.0分枝合併
- 合併後,就把master推上服務器
- 從mater中創建2.0分枝,那麼master就是3.0分枝了,然後把2.0推到服務器
2.3 提交歷史記錄查看
2.4 對比不同版本的區別
2.5 回退到上一個版本
- 比如你誤刪了一段代碼(方法),但又提交了,可以使用下面的get來進行回退
2.6 團隊開發,解決衝突
Step 1:
- 使用虛擬機裏的IDEA下載代碼
Step 2:
添加其它開發者到當前項目組
Step 3:
- 在虛擬機中給某個類添加一些代碼,比如添加個方法,然後push到服務器
- 在push服務器中,可能失敗,因爲你沒有把另一個開發者的帳號添加到項目組中
Step 4:
- 在本機中也在同一個文件中修改或者添加代碼
- 然後push到服務器會失敗,因爲代碼衝突了
合併後,然後再次push即可以了
注意:A開發者更新後,另一個開發者可以重新pull更新代碼到本地