基礎(chǔ)
git help checkout
查看git checkout的命令幫助
git clone https://github.com/libgit2/libgit2
克隆遠(yuǎn)程倉庫到本地
git status
查看當(dāng)前分支狀態(tài)
git add m.js
將m.js放到暫存區(qū)域
git commit -m 'desc'
提交更新并且添加備注desc
git commit -am 'desc'
跳過使用暫存區(qū)域直接提交更新并且添加備注desc
git push
推送更新到遠(yuǎn)程倉庫
git pull
獲取遠(yuǎn)程倉庫的更新
分支管理
git chekcout mobile
如果存在mobile分支,切換到mobile分支;否則新建mobile分支
git branch -d mobile
刪除mobile分支
git checkout -b mobile origin/mobile
拉取遠(yuǎn)程分支mobile到本地
git chekcout -b mobile
基于當(dāng)前分支新建并切換到mobile分支
git push origin mobile
將本地的mobile分支同步到遠(yuǎn)程倉庫
git push origin --delete mobile
刪除遠(yuǎn)程的mobile分支
git ls-remote
查看遠(yuǎn)程分支列表
git merge mobile
將mobile分支合并到當(dāng)前分支
標(biāo)簽管理
git tag
查看本地標(biāo)簽列表
git tag -a v1.4 -m 'my version 1.4'
創(chuàng)建標(biāo)簽v1.4瀑焦,并且添加標(biāo)簽說明“my version 1.4”
git push origin v1.4
將標(biāo)簽v1.4同步到遠(yuǎn)程倉庫
git push origin --tags
將所有本地標(biāo)簽同步到遠(yuǎn)程倉庫
git tag -d v1.4
刪除標(biāo)簽v1.4
git push origin :refs/tags/v1.4
刪除遠(yuǎn)程倉庫標(biāo)簽v1.4
git tag v1.4new v1.4
復(fù)制v1.4標(biāo)簽窟蓝,生成v1.4new標(biāo)簽
git checkoout v1.4
切換當(dāng)前文件到v1.4(跟切換分支的命令一致)
git checkout -b mobile v1.4
基于v1.4標(biāo)簽生成mobile分支
其他
git reset HEAD m.js
取消m.js的暫存
git checkout -- m.js
撤銷m.js的本地修改
git reset --hard 版本序列號
還原本地文件到某個版本
git reset --hard HEAD~2
工作目錄、暫存區(qū)域、本地倉庫回退到上2個版本
git log master ^origin/master
查看到未傳送到遠(yuǎn)程代碼庫的提交詳情
如何只更新某個文件?
git fetch origin master
先更新本地庫(但不更新工作拷貝)
git log -p master..origin/master
查看差異
git checkout origin/master -- path/to/file
更新單個文件的工作拷貝
而 更新所有文件的工作拷貝 的命令如下:
git merge origin/master
某個文件的某一行修改了塑崖,如何追蹤修改人?
git blame m.js
git gui blame m.js
使用git GUI界面來查看每一行的變化痛倚,更直觀
如何查看某個文件的歷史修改规婆?
git log m.js
git show 版本號
查看某個版本的修改詳情
如何對某個文件進(jìn)行版本回退?
git log m.js
git reset 9aa51d89799716aa68cff3f30c26f8815408e926 m.js
將m.js回退到某個版本
git checkout m.js
git commit -m "m.js回退版本"
或者
git checkout 9aa51d89799716aa68cff3f30c26f8815408e926 m.js
如何對某個文件取消版本控制蝉稳,但是不刪除抒蚜?
git rm --cached m.js
然后更新 .gitignore 忽略掉目標(biāo)文件,最后
git commit -m "We really don't want Git to track m.js anymore!"
如何查看差異耘戚?
git diff HEAD
工作目錄與上次提交時之間的所有差別
git diff
查看尚未暫存的文件更新了哪些部分
git diff filename
查看尚未暫存的某個文件更新了哪些
git diff --cached
查看已經(jīng)暫存起來的文件和上次提交的版本之間的差異
git diff --cached filename
查看已經(jīng)暫存起來的某個文件和上次提交的版本之間的差異
git diff ffd98b291e0caa6c33575c1ef465eae661ce40c9 b8e7b00c02b95b320f14b625663fdecf2d63e74c
查看某兩個版本之間的差異
git diff ffd98b291e0caa6c33575c1ef465eae661ce40c9:filename b8e7b00c02b95b320f14b625663fdecf2d63e74c:filename
查看某兩個版本的某個文件之間的差異