git GUI管理工具 sourcetree使用
sourectree安裝包下載 SourceTree安裝包路徑html
sourcetree安裝後配置 Sourcetree SSH配置git
sourcetree忽略文件設置 http://www.javashuo.com/article/p-gsbwaxnc-ka.html緩存
sourcetree使用參考 http://www.javashuo.com/article/p-hmqrknfg-km.html工具
git與sourcetree名詞映射關係
- 克隆(clone):從遠程倉庫URL加載建立一個與遠程倉庫同樣的本地倉庫
- 提交(commit):將暫存文件上傳到本地倉庫(咱們在Finder中對本地倉庫作修改後通常都得先提交一次,再推送)
- 檢出(checkout):切換不一樣分支
- 添加(add):添加文件到緩存區
- 移除(remove):移除文件至緩存區
- 暫存(git stash):保存工做現場
- 重置(reset):回到最近添加(add)/提交(commit)狀態
- 合併(merge):將多個同名文件合併爲一個文件,該文件包含多個同名文件的全部內容,相同內容抵消
- 抓取(fetch):從遠程倉庫獲取信息並同步至本地倉庫
- 拉取(pull):從遠程倉庫獲取信息並同步至本地倉庫,而且自動執行合併(merge)操做,即 pull=fetch+merge
- 推送(push):將本地倉庫同步至遠程倉庫,通常推送(push)前先拉取(pull)一次,確保一致
- 分支(branch):建立/修改/刪除分枝
- 標籤(tag):給項目增添標籤
- 工做流(Git Flow):團隊工做時,每一個人建立屬於本身的分枝(branch),肯定無誤後提交到master分枝
- 終端(terminal):能夠輸入git命令行
git命令-代碼提交步驟
- cd命令進入項目目錄而後以下
- 修改完代碼後,git status查看本身的文件修改列表;
- git diff <文件名> 查看本身的文件修改記錄;
- git add <文件名> 添加須要提交的文件列表;
- git commit -m "提交說明"
- git pull,更新一下當前最新的代碼;
- 解決衝突(若有衝突)
- git push 提交代碼
git commit 模板
故事id #comment
: 提交描述
測試
type用於說明 commit 的類別,可使用以下類別:fetch
- add:新功能(feature)
- delete:刪除
- fix:修復功能(不是bug狀況的修改)
- bug:修復bug
- doc:文檔(documentation)
- style: 格式(不影響代碼運行的變更,好比代碼縮進)
- refactor:重構(即不是新增功能,也不是修改bug的代碼變更)
- test:增長測試
- chore:構建過程或輔助工具的變更
- other:其餘非正常操做,好比修改.gitignore文件
- (注:沒有故事id使用項目ID)
git 代碼衝突
<<<<<<<<<<<<<<< HEAD
區間1---你新修改事後的代碼
==================
區間2---你修改前的代碼
>>>>>>> 9acad6f05c829cf34347e19286ff050708d70809
(通常手動解決衝突,將區間2中代碼刪掉(注意本身檢查),將自動生成的 <<<<< ====== >>>>>>也刪掉)
git Merge .orig
.orig是merge時生成的備份文件,下面命令配置能夠實現不生成這些文件:
git config --global mergetool.keepBackup falseui