Git已經成爲當前最流行的版本控制解決方案了,若是你如今還不使用git都很差意思出門了。若是細數起來Git的命令太多了,可是經常使用的就那麼幾組命令,下面說下經常使用命令的用法:html
對於本地倉庫操做: 1. git init 使一個不受git管理的文件夾成爲一個Git管理的項目 2. git add 將改變或新文件加入到 git暫存區中 3. git commit 將暫存區內容寫入到git本地倉庫中 4. git rm 從git本地倉庫移除文件(只是從倉庫中移除,並不真正刪除文件) 5. git status 查看當前本地倉庫狀態,是否有改變的文件,是否有衝突的文件等 6. git log 查看提交歷史記錄,將按照時間倒敘排列 7. git config 配置git ,經常使用的是配置用戶名和郵箱 git config --global user.name "王大拿" git config --global user.email "my@studyits.cn" 與遠程倉庫交互命令: 8. git clone 克隆遠程倉庫到本地 9. git fetch 將遠程倉庫改變拉取到本地(不自動合併) (不經常使用,經常使用git pull) 10. git pull 將遠程倉庫改變拉取到本地 (自動合併若是沒有衝突) 11. git push 將本地倉庫改變推送到遠程倉庫 12. git remote add origin http://URL 將本地GIT倉庫與遠程項目關聯 其餘經常使用命令: git branch 分支管理 git checkout 切換分支, 或者用於放棄當前修改 git tag 標籤管理 git stash 將當前改變臨時存儲,稍後回來修改 git stash pop 取回剛纔改變 git reset [--hard] COMMIT_ID 使HEAD移動到COMMIT_ID,放棄COMMIT_ID到 HEAD之間的提交,若是加上 --hard將直接放棄並刪除期間建立的文件, git reset放棄的提交不在歷史記錄中提現 git revert COMMIT_ID 放棄某次提交,可是放棄的提交將在歷史記錄中存在
下面簡單演示下:(本地倉庫操做)git
#進入home目錄 cd ~ #建立一個測試文件夾 test_project make test_project #使當前文件成爲git目錄 git init #新建立一個文件index.html,並寫入helloworld touch ./index.html echo "hello world" > ./index.html #將改變寫入到git暫存區中 git add index.html #將改變提交到本地倉庫, 並經過-m 記錄下改變緣由或者備註信息 git commit -m "新建index.html" #經過git log 能夠查看改變 git log
#接着在建立一個index2.html touch index2.html # 查看當前git狀態 git status #返回信息以下: On branch master Untracked files: (use "git add <file>..." to include in what will be committed) index2.html nothing added to commit but untracked files present (use "git add" to track) #此時說明index2.html還不受git管理 git add index2.html #再次查看狀態 git status #返回信息以下 On branch master Changes to be committed: (use "git reset HEAD <file>..." to unstage) new file: index2.html 已是unstage狀態了 #把更新寫入數據庫中 git commit -m "新建立index2.html"
遠程倉庫操做:shell
#把遠成倉庫代碼克隆到本地(最後的iReact可選,若是不寫默認是iReact,你能夠指定成別的名稱,例如myFirstProject) git clone https://git.oschina.net/wzwahl36/iReact.git iReact #獲取遠成的更新 cd iReact git pull #修改一個文件,而後把更新推送到遠成倉庫 touch index.html git add index.html git commit -m "add index.html test" git push