本文所涉及命令基本能夠涵蓋平常開發場景, 對於開發者平時不多使用的命令再也不列舉,這樣不至於讓剛剛使用git的小夥伴們看的腦殼大。。。若有特殊使用能夠聯繫我單獨回覆。git
首先經過一張圖瞭解git的工做流程:bash
而後說一下項目開發中使用git的具體工做流程:blog
1)進入項目根目錄索引
2)git status: 查看當前所在的分支, 本地代碼狀態(哪些代碼修改過,是否有衝突,是否已經添加到git索引, 是否已經將代碼提交到本地等信息)ip
3)git add <option>; 添加指定文件到git索引。git add 詳解請看下文開發
4)git commit -m "描述"; 提交代碼到本地倉庫。ps: git 強制要求添加描述,描述此次更改過哪些信息等同步
5)git pull origin 當前分支名; 將當前分支遠程代碼同步到本地倉庫。工作流
6)我靠,衝突啦,衝突啦,怎麼辦怎麼辦。。。刪項目從新clone吧。。。這多是新人最標準的想法。(~ ̄▽ ̄)~ 彆着急,其實很簡單it
7)找到衝突文件,和修改過該文件的相關同事商量哪些是他改動的,一塊兒參與合併, 切近不要在沒通過商量的前提下擅自刪除別人的代碼,這是很是不負責任的作法。io
8)重複執行(3)(4)(5)步: 將合併後的文件從新索引至git,並提交到本地,再次pull確認遠程最新代碼已被更新
9)git push origin 當前分支名; 將本地倉庫代碼推送至遠程倉庫。
上述流程圖:
下文只列出最經常使用的命令, 單個命令的詳解後續將更新
git branch -a # 查看全部分支,包括本地和遠程倉庫 git branch -r # 查看全部遠程分支 git branch 分支名 # 建立新分支 git branch -d 分支名 # 刪除本地指定分支。-D爲強制刪除。如要刪除遠程倉庫該分支執行git push origin :分支名。注意冒號前面有個空格 git checkout 分支名 # 切換至指定分支 git checkout -b 分支名 # 建立新分支,並切換至新分支 git branch -m 老分支名 新分支名 # 更改本地分支名
git add <file> # 將本地指定文件名或目錄的文件添加到git索引 git add . # 將當前文件夾下全部改動(新增,修改等變更過的)的文件添加到git索引 git add -A # 將本地全部改動(新增,修改等變更過的)的文件添加到git索引
git commit -m "description" # 將已經被git索引(git add以後的)的文件提交到本地倉庫(暫存區), -m 後爲描述 git commit -am # 把修改的文件添加到暫存區,但不包含新增的文件,而後提交。
git pull origin 遠程分支名 #拉取遠程指定分支最新文件到本地
git push origin 遠程分支名 #將本地倉庫(暫存區)文件推送至遠程倉庫