當咱們須要刪除暫存區
或分支
上的文件, 同時工做區也不須要這個文件了, 可使用
1 git rm file_path 2 git commit -m 'delete somefile' 3 git push
當咱們須要刪除暫存區
或分支
上的文件, 但本地又須要使用, 只是不但願這個文件被版本控制, 可使用
git rm --cached file_path git commit -m 'delete remote somefile' git push
一、初始化:一個項目只執行一次 只要有.git隱藏文件夾就ok了html
git init 或者 git clone url
二、爲遠程github倉庫生成別名(remote-name就是遠程倉庫的別名)這一步執行一次也能夠git
git remote add <remote-name> <url> git remote add origin git@github.com:yourName/yourRepo.git # origin是默認的遠程倉庫別名 (這個須要在git init 以後才能實現,方便push和clone)
三、忽略提交文件github
四、新建分支branch1 團隊的話不要使用默認的主分支(很大可能你沒有主分支的push權限)post
#git branch -a 查看全部分支(包括遠程和本地分支) #git branch 分支名 查看本地分支 #git branch -r 分支名 查看遠程分支 git branch branch1 #新建一個本地分支
五、切換到branch1分支(默認是在master分支)fetch
git checkout branch1
六、修改代碼後並放入暫存區 對於全部分支而言, 工做區和暫存區是公共的 因此add以後切換分支後的新分支也是有add後的狀態的url
git add ./test.txt
七、提交到本地倉庫(注意在此以前必定要切換分支)spa
git commit -m "描述" #error: pathspec 'demo' did not match any file(s) known to git. 缺乏參數也會報這個錯的 另"雙引號變爲單引號也會報這個錯
準備提交到遠程倉庫版本控制
八、拉取要提交分支的最新的內容日誌
git fetch 遠程倉庫名 遠程的分支名:本地分支名 #本地分支名不存在的話會新建
九、檢查代碼衝突code
git diff tmp // 將當前分支和tmp進行對比
十、合併分支
git merge tmp //合併tmp分支到當前分支
迷之自信肯定代碼不會衝突(好比就一我的貢獻代碼)能夠將八、九、10合併
git fetch <remote_store_short_name> <remote_branch>[:local_branch]
十一、同步到遠程倉庫
#將本地倉庫同步到github遠程倉庫中 git push [remote-name] [branch-name] git push origin master #把本地分支推到遠程倉庫origin(origin爲別名)的master默認主分支下 #注意:沒有第一步設置別名那麼須要改爲這樣: git push https://github.com/lichihua/codedemogit.git master
查看提交日誌
git log --oneline 或者
git reflog
注意HEAD@{3}: HEAD@{回退到這個版本所需的步數}:
黃色的就是截取後額版本號
版本回退
git reset --hard 71ad2d8
當咱們須要刪除暫存區
或分支
上的文件, 同時工做區也不須要這個文件了, 可使用
1 git rm file_path 2 git commit -m 'delete somefile' 3 git push
當咱們須要刪除暫存區
或分支
上的文件, 但本地又須要使用, 只是不但願這個文件被版本控制, 可使用
git rm --cached file_path git commit -m 'delete remote somefile' git push