python中反射講解
版本控制
什麼是版本控制?:版本控制是我們開發過程中用於管理我們的檔案,目錄,工程內容的修改歷史,檢視更改歷史記錄,備份以便恢復到以前的版本的軟體工程技術
-
實現區域多人協同開發
-
保護原始碼和文件
常見的版本控制工具
-
Git
-
Svn
-
CVS
-
VSS
版本控制工具有很多多嗎,但世界上現在最流行的就是Git與Svn
版本控制分類
-
本地版本控制
記錄檔案每次的更新,就可以對一個版本做一次快照,適用於記錄 補丁檔案,
-
集中版本控制 SVN
所有的版本資料都儲存在伺服器上,協同開發從伺服器上同步更新或上傳自己的修改
-
分散式版本控制Git
可以離線在本地提交,只需要在連網的時候push一下到指定的遠端倉庫即可,但是增加了本地儲存空間的佔用,但是不會因為
伺服器損壞和網路問題,而造成無法開發的情況
Git和SVN的主要區別
-
SVN是集中版本控制系統 1. 版本庫集中放在中央伺服器上的 2. 集中式版本控制系統需要聯網才能工作,對網路頻寬要求較高
-
Git是分散式版本控制系統 1. Git沒有中央伺服器 2. 每一個人的電腦都是伺服器 3. 工作的時候不需要聯網,可以放在本地倉庫,還可以push到遠端倉庫 4. 因為版本都在自己電腦上,
Git歷史
Git是目前世界上最先進的分散式版本控制系統。
聊聊Git的歷史
同生活中的許多偉大事物一樣,Git 誕生於一個極富紛爭大舉創新的年代。
Linux 核心開源專案有著為數眾廣的參與者。絕大多數的 Linux 核心維護工作都花在了提交補丁和儲存歸檔的繁瑣事務上(1991-2002年間)。到 2002 年,整個專案組開始啟用一個專有的分散式版本控制系統 BitKeeper 來管理和維護程式碼。
Linux社群中存在很多的大佬!破解研究 BitKeeper !
到了 2005 年,開發 BitKeeper 的商業公司同 Linux 核心開源社群的合作關係結束,他們收回了 Linux 核心社群免費使用 BitKeeper 的權力。這就迫使 Linux 開源社群(特別是 Linux 的締造者 Linus Torvalds)基於使用 BitKeeper 時的經驗教訓,開發出自己的版本系統。(2周左右!) 也就是後來的 Git!
Git是目前世界上最先進的分散式版本控制系統。
Git是免費、開源的,最初Git是為輔助 Linux 核心開發的,來替代 BitKeeper!
Git下載安裝
官網下載太慢,我們可以使用淘寶映象下載:
安裝:無腦安裝即可下一步!
GitBash:Unix與Linux風格的命令列,使用最多,推薦最多
GitCMD:windows風格命令列
GitGUl:圖形介面的Git
Git配置
所有的配置檔案都儲存在本地
檢視配置 git config -l
檢視不同級別的配置檔案:
檢視系統config
git config --system --list
檢視當前使用者 (global)配置
git config --global --list
Git相關的配置檔案:
1)、Git\etc\gitconfig :Git 安裝目錄下的 gitconfig --system 系統級
2)、C:\Users\Administrator\ .gitconfig 只適用於當前登入使用者的配置 --global 全域性
設定使用者名稱與郵箱:
git config --global user.name "zhangsan" # 名稱
git config --global user.email [email protected]
Git的四個區域
-
Workspace: 工作區,就是平時存放程式碼的地方
-
Index/Stage:暫存區:用於臨時存放你的改動,實際上就是一個檔案,儲存即將提交到檔案列表資訊
-
Repository: 倉庫區(或本地倉庫),就是安全存放資料的位置,這裡面有你提交到所有版本的資料,其中HEAD指向最新放入倉庫的版本
-
Remote:遠端倉庫,託管程式碼的伺服器,可以簡單的認為是你專案組中的一臺電腦用於遠端資料交換
-
Direcotory:使用Git管理的一個目錄,也就是一個倉庫,包含我們的工作空間和Git管理空間,
-
WorkSpace: 需要通過Git進行版本控制的目錄和檔案,這些目錄和檔案組成了工作空間
-
git:存放Git管理資訊的目錄,初始化倉庫的時候建立
-
Index/Stage:暫存區,或者叫待提交更新區,在提交進入repo之前,我們可以把所有的更新放在暫存區。
-
Local Repo:本地倉庫,一個存放在本地的版本庫:HADE會只是當前開發分支(branch)
-
Stach: 隱藏,是一個工作狀態儲存棧,用於儲存/恢復WorkSpace中的臨時狀態
Git工作流程
-
在工作目錄中新增、修改檔案
-
將需要進行版本管理的檔案放入暫存區
-
將暫存區的檔案提交到遠端git倉庫
git管理檔案三種狀態(已修改 modified) , 已暫存(staged), 已提交(committed)
Git常用命令
add: 新增到暫存區
commit:提交到本地倉庫
push :提交到遠端倉庫
git init:建立本地倉庫
git clone [url] :克隆遠端倉庫
分支
分支:在原始碼基礎之上又複製了一份,可以切換,修改主分支或副分支,而且都不互相影響,在某個點可以合併
git分支常用命令:
-
git branch 列出本地所有分支
-
git branch -r 列出遠端所有分支
-
git branch [name] 新建一個分支,但不會切換到你新建的分支,依舊會停留在當前分支
-
git checkout -b [name] 新建一個分支。並切換到該分支
-
git merge [分支] 指定分支併合併到當前分支
-
git branch -d [分支] 刪除分支
-
git branch -dr [remote/分支] 刪除遠端倉庫分支
IDEA中操作Git
-
引入Git,在設定中搜索Git path路徑是你安裝的git目錄bin下的git.exe檔案。點選Test測試
2.建立本地倉庫
2.1成功的話會有圖標出現
-
將專案提交到遠端倉庫,add--commit
-
可自選push
-
開啟分支
-
建立分支、切換分支
-
建立分支
- 切換分支
- 合併分支
-