git commit -m //提交併填寫詳細信息
git commit -a //省略了add放入緩存一步,直接提交
git reset HEAD —hello.js // 取消已緩存的內容
git rm hello.js //將文件從緩存區刪除
git rm —cached //在工做目錄中保留此文件
這與 git reset HEAD
將條目取消緩存是有區別的。 「取消緩存」的意思就是將緩存區恢復爲咱們作出修改以前的樣子。 在另外一方面,git rm
則將該文件完全從緩存區踢出,所以它再也不下一個提交快照以內,進而有效地刪除它。
git mv
雖然有 git mv
命令,但它有點多餘 —— 它作得全部事情就是 git rm --cached
, 重命名磁盤上的文件,而後再執行 git add
把新文件添加到緩存區
分支與合併
git branch // 列出可用的分支
git branch testing //建立testing分支
git checkout testing //切換到testing分支
git checkout -b testing //建立新分支並當即切換到他
git branch -d testing //刪除testing分支
git merge testing // 將testing分支合併到主分支上
git log //查看日誌
git log —oneline //查看歷史紀錄的簡潔版本
git log —oneline —graph //查看歷史何時出現分支、合併
git tag -a v1.0 //給歷史紀錄中的重要一點打上標籤
並執行 git log —oneline —decorate —graph //查看標籤
分享與更新項目
git fetch github/master 從遠端倉庫下載新分支與數據
git pull 從遠端倉庫提取數據並嘗試合併當前分支
git push 推送你的新分支與數據到某個遠端倉庫
檢查與比較
git diff
簡而言之 使用 git diff
查看某一分支自它偏離出來起與過去某一點之間項目的改動。 老是使用git diff branchA...branchB
來查看 branchB 與 branchA 的相對差值,這會讓事情簡單點。
git log // 過濾的你的提交歷史紀錄
git log —author //尋找特定做者的提交
git log —since —before 根據日期過濾提交紀錄
例如,若是我要看 Git 項目中三週前且在四月十八日以後的全部提交,我能夠執行這個(還用了 --no-merges
選項以隱藏合併提交):
git log --oneline --before={3.weeks.ago} --after={2010-04-18} --no-merges
git log —grep // 提交註釋過濾提交記錄
git log -S // 依據所引入的差值過濾
git log -p 顯示每一個提交引入的補丁
git log --stat 顯示每一個提交引入的改動的差值統計