0. 初始化倉庫,創(chuàng)建git倉庫
$ git init
1. 獲取秘鑰窟绷,并查看秘鑰
# 獲取秘鑰
$ ssh-keygen -t rsa -C <郵件名稱>
# 查看秘鑰
$ cat ~/.ssh/id_rsa.pub
2. 配置個人信息
# 配置用戶名
$ git config --global user.name <名字>
# 配置郵箱
$ git config --global user.email <郵箱>
# 查看配置信息
$ git config --list
# 查看用戶名
$ git config --global user.name
# 查看郵箱
$ git config --global user.email
3. 查看文件狀態(tài)
$ git status
4. 將工作區(qū)文件添加到緩存區(qū)
# 提交一個文件
$ git add <文件名稱>
# 提交兩個文件
$ git add <文件名稱1> <文件名稱2>
# 提交所有變化(包括刪除栏笆、修改诊杆、新增)
$ git add -A
# 提交被修改(modified)和被刪除(deleted)文件船侧,不包括新文件(new)
$ git add -u
# 提交新文件(new)和被修改(modified)文件蔬螟,不包括被刪除(deleted)文件
$ git add .
5. 將緩存區(qū)的文件添加到版本庫
$ git commit -m "massage content"
# -m 指的是massage琅摩,和之后見到的master無關(guān)
# massage content 對本次提交內(nèi)容的說明
6. 查看提交的版本日志
# 展示所有的版本
$ git log
# 用一行展示每一個版本
$ git log --pretty=oneline
7. 查看文件最新改動的地方
# 查看工作區(qū)與暫存區(qū)文件的比較
$ git diff <文件名稱>
# 查看暫存區(qū)與版本庫文件的比較
$ git diff --cached
# 查看工作區(qū)與版本區(qū)文件的比較
$ git diff master
-開頭的行铁孵,是只出現(xiàn)在源文件中的行
+開頭的行,是只出現(xiàn)在目標(biāo)文件中的行
空格開頭的行房资,是源文件和目標(biāo)文件中都出現(xiàn)的行
差異按照差異小結(jié)進(jìn)行組織蜕劝,每個差異小結(jié)的第一行都是定位語句,由@@開頭,@@結(jié)尾
8. 版本回退
# 回退到上一個版本
$ git reset --hard HEAD^
# 回退到上上個版本
$ git reset --hard HEAD^^
# 回退到第N個版本 N是一個整數(shù)
$ git reset --hard HEAD~N
# 回退到指定版本
$ git reset --hard 版本號
9. 查看所有版本號
$ git reflog
10. 刪除操作
# 刪除暫存區(qū)或分支上的文件, 同時工作區(qū)也不需要這個文件
$ git rm <文件名稱>
# 強制刪除文件
$ git rm -f <文件名稱>
# 刪除暫存區(qū)或分支上的文件, 但本地又需要使用, 只是不希望這個文件被版本控制
$ git rm --cached <文件名稱>
11.git推送
# 將文件上傳到github上岖沛,第一次上傳遠(yuǎn)程倉庫時需要加 -u 暑始,此后的推送就可以去掉 -u 了
$ git push -u origin master
# 查看遠(yuǎn)程倉庫名稱 默認(rèn) origin
$ git remote
# 查看當(dāng)前的遠(yuǎn)程倉庫名稱和對應(yīng)的地址
$ git remote -v
12. 克隆
$ git clone <倉庫地址>
13. 創(chuàng)建和刪除分支
# 查看本地分支列表
$ git branch
# 新建分支
$ git branch <分支名稱>
# 新建并切換分支
$ git checkout -b <分支名稱>
# 切換分支
$ git checkout <分支名稱>
# 刪除本地分支
$ git branch -d <分支名稱>
# 刪除遠(yuǎn)程分支
$ git branch -D <分支名稱>
14. 分支提交
$ git push origin <分支名稱>
15. 更新本地倉庫
# 更新git remote 中所有的遠(yuǎn)程倉庫所包含分支的最新commit-id
$ git fetch --all
# 將本地庫更新至遠(yuǎn)程庫的最新狀態(tài)
$ git pull
16. 合并文件
$ git merge <分支名稱>
17. clone
遠(yuǎn)程倉庫后,切換到非 master
分支
Git默認(rèn)只顯示master分支的數(shù)據(jù)婴削,還需要手動切換到我們需要的分支并顯示出來
# 切換分支
$ git branch
$ git checkout -b 分支名字 origin/分支名字
也可以在 clone
的時候克隆某一個分支
$ git clone -b 分支名 倉庫地址