一、Git 的介紹
git軟件的作用:管理軟件開發項目中的源代碼文件。
常用功能:
倉庫管理、文件管理、分支管理、標簽管理、遠程操作
功能指令:
add,commit,log,branch,tag,remote,status
1.1 SCM:
軟件配置管理(Software Configuration Management )
SCM 是指通過執行版本控制、變更控制的規程,以及使用合適的配置管理軟件,來保證所有配置項的完整性和可跟蹤性。
配置管理是對工作成果的一種有效保護。
1.2 SCM 軟件:
需要中央服務器:
- Visual Source Safe:美國微軟公司出品的版本控制系統,簡稱 VSS,集中式版本控制系統。
- 不適合復雜的多人協同開發,軟件收費
- Concurrent Versions System:老牌的版本控制系統,它是基于客戶端 / 服務器的行為使得其可容納多用戶,構成網絡也很方便,簡稱 CVS
- 支持多人合作,協同開發,但是存在軟件編碼問題
- Subversion:CVS 的升級版本,開放源代碼的版本控制系統,實現共享資源,實現最終集中式的管理
分布式版本控制:
- Git:開源的分布式版本控制系統,可以有效、高速地處理從很小到非常大的項目版本管理。也是 Linus Torvalds 為了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟件。
版本控制:
集中式版本控制
分布式版本控制
多人協作開發
版本的作用:
保存重要的歷史記錄
恢復數據
二、Git 概念
1.1 版本控制軟件的基礎功能
1.保存和管理軟件
2.提供客戶端工具進行訪問
3.提供不同版本文件的比對功能
1.2 集中式版本控制
會出現的問題:文件沖突問題 ——》解決方式:加鎖
1.3 分布式版本控制
三、Git 的深入了解
git 官網:https://git-scm.com/
Git 的版本號是:40個16進制的數字組成的版本號(提交碼)
3.1 Git 分支原理:
3.2 Git 中的一些信息
版本號:Git 軟件根據 SHA-1 算法來獲得的,長度是40位
? ? ? ? 可以避免沖突
? ? ? ? 可以定位倉庫中的文件:2(文件夾)+ 38(文件名)
?
3.3 git 的一些相關指令:
1. 查看當前 git 的版本:git -v
2. 在當前目錄創建我們的倉庫:git init
3. 用工具來創建倉庫:
4. 克隆遠程倉庫的內容:git clone 克隆網址
5. 克隆遠程倉庫的內容并自定義名稱:git clone 克隆網址 新名字
6. 查看暫存區狀態:git status
7. 將工作區的文件加到暫存區做比對操作:git add 文件名
8. 將暫存區的文件移動到工作區:git rm --cached 文件名
9. 將暫存區文件提交到存儲區域:git commit -m 提交信息
10. 查看日志信息:git log
查看日志信息,并以一行進行展示:git log --oneline
11. 把誤刪除的文件恢復到工作區:git restore 文件名
從歷史記錄(日志)中恢復【可能會丟失提交過程】:git reset --hard 版本號
12. 把版本庫還原到這個版本之前:git revert 版本號
13. 增加分支 (在倉庫中有提交后才可以):git branch 分支名
查看分支個數:git branch -v
切換分支:git checkout 分支名
創建分支并切換過去:git checkout -b 分支名
刪除分支:git branch -d 分支名
14. 分支的合并和沖突:
合并分支中的內容:git merge 分支名
15. tag 標簽操作:
給版本添加標簽(但是標簽不能重復 ):git tag 標簽名 版本號
查看標簽:git tag?
刪除標簽:git tag -d 標簽名
16. 遠程倉庫操作:
SSH 地址需要提供安全認證規則。