參考廖雪峰的Git的教程
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
1.創(chuàng)建倉庫
右鍵 > Git Bash here
-顯示當(dāng)前目錄
$ pwd
-初始化问潭,變成Git可管理的倉庫
$ git init
2.添加到倉庫
把文件放在倉庫下纺且,
$ git add readme.txt
可以多次add灌危,最后
$ git commit -m "xxx"
xxx 本次提交說明
3.查看修改
-當(dāng)前狀態(tài)
$ git status
-查看不同
$ git diff xxx.txt
4.版本回退
-查看歷史版本信息
$ git log
-只顯示版本號
$ git log --pretty=oneline
-版本回退
HEAD表示當(dāng)前版本
上一版本,
$ git reset --hard HEAD^
指定版本揩徊,
$ git reset --commit_id
-回到最新版本
查看歷史操作指令
$ git reflog
-當(dāng)前文件內(nèi)容
$ cat xxx.txt
5.撤銷修改
-修改工作區(qū),未添加到暫存區(qū)(沒有 add)
$ git checkout -- xxx.txt
-已添加到暫存區(qū)载弄,未提交(沒有commit)
$ git reset HEAD xxx.txt
$ git checkout -- xxx.txt
-已提交到倉庫婿奔,未推送到遠程庫睦尽,直接版本回退
6.刪除文件
-刪除版本庫中的文件
$ git rm xxx.txt
$ git commit -m "remove"
-從版本庫中恢復(fù)誤刪文件
$ git checkout -- xxx.txt
7.創(chuàng)建GiHub遠程倉庫
$ ssh-keygen -t rsa -C "youremail@example.com"
-在GitHub上新建 SSH key 將 id_rsa.pub 復(fù)制到 Key 輸入框
8.添加遠程庫
-在 GitHub 上添加新倉庫器净,Create repository
-關(guān)聯(lián)倉庫
$ git remote add origin git@github.com:wanderwuuu/git.git
-將本地倉庫推送到 GitHub ,第一次推送時加上 u 当凡,將本地所有分支與遠程所有分支關(guān)聯(lián)起來
$ git push -u origin master
-第一次 push 或 clone 時會出現(xiàn) SSH 警告山害, 輸入 yes 即可
9.從遠程庫克隆
$ git clone git@github.com:wanderwuuu/gitskills.git
10.創(chuàng)建與合并分支
查看分支:$ git branch
創(chuàng)建分支:$ git branch <name>
切換分支:$ git checkout <name>
創(chuàng)建+切換分支:$ git checkout -b <name>
合并某分支到當(dāng)前分支:$ git merge <name>
合并分支時,加上--no-ff參數(shù)就可以用普通模式合并沿量,合并后的歷史有分支浪慌,能看出來曾經(jīng)做過合并,
而 fast forward 合并就看不出來曾經(jīng)做過合并朴则。
刪除分支:$ git branch -d <name>
如果要丟棄一個沒有被合并過的分支权纤,可以通過git branch -D <name> 強行刪除。
11.解決分支沖突 乌妒,查看分支合并圖
$ git log --graph --pretty=oneline
12.暫存當(dāng)前狀態(tài)汹想,解決Bug
-暫存當(dāng)前狀態(tài)
$ git stash
-查看 stash 歷史
$ git stash list
-恢復(fù)之前狀態(tài)
$ git stash pop
13.多人協(xié)作
-查看遠程庫信息
$ git remote -v
-從本地推送分支
$ git push origin branch-name
-在本地創(chuàng)建和遠程分支對應(yīng)的分支
git checkout -b branch-name origin/branch-name
-push 失敗,先 pull
$ git pull
-pull 失敗 撤蚊,創(chuàng)建本地 dev 分支與遠程 origin/dev 分支的鏈接
$ git branch --set-upstream dev origin/dev
14.標簽管理
-創(chuàng)建標簽
當(dāng)前分支
$ git tag v1.0
指定分支
$ git tag v1.0 -commit_id
查看標簽
$ git tag
查看標簽信息
$ git show <tagname>
指定標簽信息
$ git tag -a <tagname> -m "blablabla..."
-操作標簽
推送一個本地標簽
$ git push origin <tagname>
推送全部本地標簽
$ git push origin --tags
刪除本地標簽
$ git tag -d <tagname>
刪除遠程標簽
$ git push origin :refs/tags/<tagname>
15.忽略文件
編寫.gitignore文件
配置文件:https://github.com/github/gitignore
16.配置別名
$ git config --global alias.st status