分佈式 : Git版本控制系統是一個分佈式的系統, 是用來保存工程源代碼歷史狀態的命令行工具;git
保存點 : Git的保存點能夠追蹤源碼中的文件, 並能獲得某一個時間點上的整個工程項目額狀態; 能夠在該保存點將多人提交的源碼合併, 也能夠會退到某一個保存點上;shell
Git離線操做性 :Git能夠離線進行代碼提交, 所以它稱得上是徹底的分佈式處理, Git全部的操做不須要在線進行; 這意味着Git的速度要比SVN等工具快得多, 由於SVN等工具須要在線時才能操做, 若是網絡環境很差, 提交代碼會變得很是緩慢; windows
Git基於快照 : SVN等老式版本控制工具是將提交點保存成補丁文件, Git提交是將提交點指向提交時的項目快照, 提交的東西包含一些元數據(做者, 日期, GPG等);瀏覽器
Git的分支和合並 : 分支模型是Git最顯著的特色, 由於這改變了開發者的開發模式, SVN等版本控制工具將每一個分支都要放在不一樣的目錄中, Git能夠在同一個目錄中切換不一樣的分支;緩存
分支即時性 : 建立和切換分支幾乎是同時進行的, 用戶能夠上傳一部分分支, 另一部分分支能夠隱藏在本地, 沒必要將全部的分支都上傳到GitHub中去;安全
分支靈活性 : 用戶能夠隨時 建立 合併 刪除分支, 多人實現不一樣的功能, 能夠建立多個分支進行開發, 以後進行分支合併, 這種方式使開發變得快速, 簡單, 安全;bash
Git客戶端下載地址 :https://code.google.com/p/msysgit/downloads/list 將地址複製到瀏覽器欄便可下載.
網絡
歡迎界面 : 直接下一步;編輯器
協議 : 必須接受;分佈式
安裝位置 : 預留100M空間, 自定義安裝位置;
選擇安裝組件 :也能夠默認選擇;
-- 圖標組件(Addition icons) : 選擇是否建立快速啓動欄圖標 或者 是否建立桌面快捷方式;
-- 桌面瀏覽(Windows Explorer integration) : 瀏覽源碼的方法, 單獨的上下文瀏覽 只使用bash 或者 只用Git GUI工具; 高級的上下文瀏覽方法 使用git-cheetah plugin插件;
-- 關聯配置文件 : 是否關聯git配置文件, 該配置文件主要顯示文本編輯器的樣式;
-- 關聯shell腳本文件 : 是否關聯Bash命令行執行的腳本文件;
-- 使用TrueType編碼 : 在命令行中是否使用TruthType編碼, 該編碼是微軟和蘋果公司制定的通用編碼;
開始菜單快捷方式目錄 : 設置開始菜單中快捷方式的目錄名稱, 也能夠選擇再也不開始菜單中建立快捷方式;
設置環境變量 : 選擇使用什麼樣的命令行工具, 通常狀況下咱們默認使用Git Bash便可, 默認選擇;
-- Git自帶 : 使用Git自帶的Git Bash命令行工具;
-- 系統自帶CMD : 使用Windows系統的命令行工具;
-- 兩者都有 : 上面兩者同時配置, 可是注意, 這樣會將windows中的find.exe 和 sort.exe工具覆蓋, 若是不懂這些儘可能不要選擇;
選擇換行格式 :
-- 檢查出windows格式轉換爲unix格式 : 將windows格式的換行轉爲unix格式的換行在進行提交;
-- 檢查出原來格式轉爲unix格式 : 無論什麼格式的, 一概轉爲unix格式的換行在進行提交;
-- 不進行格式轉換 : 不進行轉換, 檢查出什麼, 就提交什麼;
開始安裝 :
安裝結束 : over;
GitHub操做流程 :
第一次提交 :
方案一 : 本地建立項目根目錄, 而後與遠程GitHub關聯, 以後的操做同樣;
-- 初始化Git倉庫 :git init ;
-- 提交改變到緩存 :git commit -m 'description' ;
-- 本地git倉庫關聯GitHub倉庫 : git remote add origin git@你的地址 ;
-- 提交到GitHub中 : git push -u origin master ;
方案二 : 方案二就是不用關聯GitHub倉庫, 直接從GitHub沖剋隆源碼到本地, 項目根目錄也不用建立;
-- 從GitHub上克隆項目到本地 :git clone git@你的地址 , 注意克隆的時候直接在倉庫根目錄便可, 不用再建立項目根目錄 ;
-- 添加文件 :git add ./* , 將目錄中全部文件添加;
-- 提交緩存 :git commit -m '提交';
-- 提交到遠程GitHub倉庫 : git push -u origin master ;
以後修改提交 :
-- 與GitHub遠程倉庫同步 :git pull ;
-- 查看文件變動 : git status ;
-- 提交代碼到本地緩存 : git commit -m 'description';
--提交代碼到遠程GitHub倉庫 :git push ;
.gitignore用法 : 開放模式 註明忽略的文件 直接列出文件名, 保守模式 註明保留的文件 !文件名 ;
Git標籤操做 : 輕量級標籤, 帶註釋標籤;
--查看標籤 :git tag ;
--添加標籤 : 輕量級標籤git tag tagName , 帶註釋標籤git tag -a tagName -m 'description' ;
--刪除標籤 :git tag -d tagName ;
--提交標籤到GitHub中 : git push origin --tags ;
Git分支操做: 建立分支後, 分支操做不會影響master分支, 可是master分支改變會影其它分支;
--列出分支 :git branch ;
--切換分支 :git checkout master ;
--提交分支 : git push origin branchName ;
--刪除分支 : git branch -d branchName , 強制刪除分支 git branch -D branchName ;
--合併分支 : git merge branchName ;