一、開始
git init? ——初始化一個git倉庫
二、創(chuàng)建與合并分支
git clone <url>? ——從遠(yuǎn)程庫中克隆項(xiàng)目到本地路
git branch <name>? ——創(chuàng)建分支
git checkout <name>? ——切換分支
git checkout -b <name>? ——創(chuàng)建并切換到分支<name>
git checkout -b <name> origin/<name>? ——創(chuàng)建從遠(yuǎn)程倉庫origin中獲取的<name>分支到本地
git branch? ——查看所有分支(帶*標(biāo)記的是當(dāng)前分支)
git merge <name>? ——將分支<name>合并到當(dāng)前分支
git merge --no-of -m "xxx" <name>? ——表示用普通模式合并分支,合并后的歷史有分支,能看出來曾經(jīng)做過合并;--no-of表示禁用Fast forward模式(這種模式合并后看不出來曾經(jīng)做過合并)
git branch -d <name>? ——刪除分支
三、本地常用操作
git status? ——查看本地倉庫的狀態(tài)(修改了哪些文件、add了哪些文件)
git diff <file>? ——查看文件的具體修改內(nèi)容
git diff HEAD -- <file>? ——查看工作區(qū)和本地版本庫里最新版本的區(qū)別
cat <file>? ——查看文件內(nèi)容
git add <file>? ——將文件修改放入暫存區(qū)
git commit -m "xxx"? ——提交暫存區(qū)的修改到本地路
git push origin <name>? ——將本地庫中分支<name>的修改提交并推送到遠(yuǎn)程庫對應(yīng)分支中,可以用git push默認(rèn)將當(dāng)前分支的修改推送到遠(yuǎn)程庫
git checkout -- <file>? ——把文件在工作區(qū)的修改全部撤銷;這里有兩種情況,一是,文件自修改后還沒有被放到暫存區(qū),現(xiàn)在撤銷修改就是回到和版本庫一模一樣的狀態(tài);二是,文件已經(jīng)添加到暫存區(qū)后,又做了修改,現(xiàn)在撤銷修改就是回到添加到暫存區(qū)后的狀態(tài);總之,就是讓這個文件回到最近一次git commit或git add時的狀態(tài)