$ git init
$ git add <filename> $ git commit -m "some hints"
# 一行顯示log信息 $ git log --pretty=oneline
# 退回到上一個版本 $ git reset --head HEAD^ # 退回到上兩個版本 $ git reset --head HEAD^^ # 退回前第N個版本 $ git reset --head HEAD~N # reset 到commit id,能夠在git reflog中找到commit id $ git reset --head <commit id>
git log
查看提交歷史,肯定要退回到哪一個版本git
git reflog
查看命令歷史,肯定要去到將來的哪一個版本github
# 查看git當前狀態 $ git status # 查看當前工做區和版本庫文件的不一樣 $ git diff HEAD -- <filename> # 撤銷修改 $ git checkout -- <filename> # 把readme.md在工做區的修改所有撤銷 $ git checkout -- readme.md
$ rm <filename>
$ git rm <filename> $ git commit -m "remove file..." # 刪除恢復,實際上是將版本庫的文件加載到工做區 $ git checkout -- <filename>
$ ssh-keygen -t rsa -C "youremail@example.com" # 一路回車
那麼在.ssh的目錄裏就會有兩個文件,id_rsa
和id_rsa.pub
,id_rsa
是私鑰,不要泄露,id_rsa.pub
是公鑰,將公鑰中的信息複製到Github的ssh-keys設置中(網頁上操做)。bash
$ git remote add origin git:github.com:yourgithub/****.git
****.git指你在Github上的某個倉庫ssh
# 把本地庫推送到Github遠程庫上 # 若是出現<reject>將 -u 改爲 -fu,強制覆蓋 $ git push -u origin master
$ git clone git@github.com:<who's>/<gitname>.git
# 建立名叫dev的分支 $ git branch dev # 切換到這個分支下 $ git checkout dev # 以上兩步能夠用一步完成 $ git checkout -b dev # 查看分支 $ git branch # 將分支dev合併到master上,先切換到master # git merge 是將指定分支合併到當前分支 $ git checkout master $ git merge dev # 刪除分支 $ git branch -d <name>