1. 程式人生 > >Git總結筆記1-搭建和使用30條簡明筆記

Git總結筆記1-搭建和使用30條簡明筆記

工作區 本地倉庫 模式 ins git windows 歷史 總結 log

1.環境搭建:

Linux:安裝git安裝包(yum install -y git) Windows:到官網下載安裝包 安裝完成後配置如下用戶名和郵箱: git config --global user.name "Your Name" git config --global user.email "[email protected]" 2.通過 git init 命令把當前目錄變成Git可以管理的倉庫(先cd到要變成倉庫的目錄下執行命令git init,執行完命令後就能在當前目錄下看到.git文件,此文件為隱藏文件,不能刪除,用於跟蹤目錄變化) 3.通過 git add <filename>
把文件添加到暫存區(重復操作添加多個文件到暫存區) 4.通過 git commit -m "版本修改註釋" 將文件提交到倉庫 5.通過 git status 查看倉庫當前的狀態(能查看到是否有修改,是否已提交) 6.通過 git diff <filename> 查看當前內容和分支中最新版本的內容的修改情況(查看清楚修改了什麽內容後就放心提交了git add <filename>) 7.通過 git log 查看從最近到最遠的提交日誌(可以加上參數簡單查看git log --pretty=oneline)(然後根據顯示的版本號回退版本) 8.通過 git reset --hard HEAD^
回退到上一個版本(HEAD表示當前版本,HEAD^表示上一版本,HEAD^^表示上上一版本)(回退方法一) 9.通過 git reset --hard <commit id> 回退到指定id的版本(<commit id>用命令git log 查看) 10.通過 git reflog 命令查看命令歷史就可以查看到未來的版本號了(當你回退到某個版本後,再像恢復到最新版本時,用git log 命令已經查看不到最新版本的commit id 了,這時通過git reflog 命令查看命令歷史) 11.通過 git checkout -- <filename> 可以撤銷文件在工作區的全部修改。 (有兩種情況: 一種是 <filename> 自修改後還沒有被放到暫存區,現在,撤銷修改就回到和版本庫一模一樣的狀態; 另一種是 <filename> 已經添加到暫存區後,又作了修改,現在,撤銷修改就回到添加到暫存區後的狀態。) 12.通過 git reset HEAD <filename>
可以把暫存區的修改撤銷掉(unstage),重新放回工作區(git reset 命令既可以回退版本,也可以把暫存區的修改回退到工作區。) 13.通過 git rm <filename> 並且git commit刪除文件(一般情況下,你通常直接在文件管理器中把 沒用的文件刪了,或者用 rm 命令刪了;現在你有兩個選擇,一是確實要從版本庫中刪除該文件,那就用命令git rm刪掉,並且git commit;二是刪錯了,因為版本庫裏還有呢,所以可以很輕松地把誤刪的文件恢復到最新版本git checkout -- <filename>) 14.通過 ssh-keygen -t rsa -C "[email protected]" 來創建SSH Key(執行命令後一路按回車)(執行完成後會在用戶主目錄下多出一個.ssh 的文件夾,文件夾裏面有id_rsa私鑰和id_rsa.pub公鑰) 15.登陸GitHub設置SSH Keys(填寫上一步生成的id_rsa.pub公鑰) 16.通過 git remote add origin [email protected]:kangvcar/learngit.git 把本地倉庫和遠程GitHub倉庫關聯(url從github的repo項目裏可以找到) 17.通過 git push -u origin master 把本地倉庫的所有內容推送到遠程庫上(第一次使用加上了-u,是推送內容並關聯master分支。之後推送直接git push origin master) 遠程倉庫:(從遠程倉庫克隆到本地倉庫) 18.通過 git clone [email protected]:kangvcar/xx.git 把遠程倉庫克隆到本地倉庫(url從github的repo項目裏可以找到) 分支管理: 19.通過 git checkout -b dev 來創建並切換到dev分支(-b參數表示創建並切換分支,相當於git branch dev 和 git checkout dev 兩個命令的效果) 20.通過 git branch 來查看當前分支(當前分支前會有*號) 21.切換分支後 git add <filename> 和 git commit -m "修改註釋" 這些操作都將在新分支dev上完成,與master分支沒有影響。 22.通過 git checkout master 切換回master分支。(如果dev分支沒有合並到master分支上,那麽在master分支上是看不到dev分支所做的修改) 23.通過 git merge dev 來把dev分支的工作成果合並到當前分支上(master分支) 24.通過 git branch -d dev 來刪除dev分支(上一步將dev分支合並到master分支後就可以放心的刪除dev分支了) 25.通過 git merge --no-ff -m "合並註釋" dev 來合並分支的話,git會生成一個新的commit,這樣就不會刪除所合並分支的歷史了。(--on-ff 參數表示用普通模式合並,而不是快速模式;快速模式合並後會刪除合並前的分支,而普通模式不會刪除)(用此命令代替git mergo dev) 26.通過 git log --graph 來查看分支合並圖(具體命令 gti log --graph --pretty=oneline --abrev-commit) 27.通過 git stash 來存儲並隱藏現場(隱藏現場後可以創建新分支去完成其他工作,而不影響已經隱藏起來的現場;一般臨時需要修改bug,而手頭上又有未完成的工作是使用) 28.通過 git stash list 來查看隱藏現場的列表 29.通過 git stash pop 或 git stash apply 來恢復現場(git stash pop 恢復後刪除stash的內容;而git stash apply 恢復後不會刪除stash的內容,如需刪除用git stash drop)(命令後面可以接參數來恢復指定stash,如git stash apply stash@{0} ,stash@{0} 通過git stash list 查看) 30. 技術分享 工作區就是我們電腦裏能看到的目錄。 stage就是暫存區,通過git add <filename>就是將文件提交到暫存區。 master就是master分支,通過git commit 就是將暫存區的文件更改提交到master分支上。

Git總結筆記1-搭建和使用30條簡明筆記