一、安裝配置Git(系統(tǒng):Windows 10 64位)
1.移步Git官網下載安裝。
2.每個倉庫的Git配置文件為.git/config文件,當前用戶的Git配置文件為用戶主目錄下的.gitconfig文件。運行"Git->Bash",可進行以下配置:(--global表示這些命令在這臺電腦的所有Git倉庫下都有用,不加則只針對當前倉庫起作用)
為應城等地區(qū)用戶提供了全套網頁設計制作服務,及應城網站建設行業(yè)解決方案。主營業(yè)務為網站設計制作、成都網站設計、應城網站設計,以傳統(tǒng)方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
$ git config --global user.name <"your name"> #指定用戶名
$ git config --global user.email <"email@example.com"> #指定email地址
$ git config --global color.ui true # 讓Git適當地顯示不同的顏色
3.忽略文件
需要忽略的文件一般是放在Git工作目錄且不能提交的文件,包括操作系統(tǒng)自動生成的文件,編譯生成的中間文件、可執(zhí)行文件等,自己的帶有敏感信息的配置文件等。
此時要在Git工作區(qū)的根目錄下創(chuàng)建一個.gitignore文件,然后把要忽略的文件名填進去,Git就會自動忽略這些文件。GitHub已經為我們準備了各種配置文件,只需要組合一下就可以編寫.gitignore文件。
$ vim .gitignore # 創(chuàng)建.gitignore文件(類Linux)
$ git add -f # 強制添加已忽略的文件
$ git check-ignore -v # 檢查.gitignore對該文件的忽略規(guī)則
4.配置別名
$ git config --global alias.
$ git config --global alias. <'command_phrase'>
設置完之后可以直接使用 git
刪除別名可以通過修改配置文件的[alias]字段。
二、創(chuàng)建版本庫(Repository)
1.創(chuàng)建一個空目錄來存放版本庫:
$ mkdir
$ cd
2.使用Git初始化版本庫
$ git init
3.把文件添加到版本庫中(首先確保該文件在版本庫所在的目錄下)
$ git add
$ git add # 把要提交的所有修改放到暫存區(qū)(Stage/Index)
$ git /* . # 添加指定目錄下所有(指定類型)的文件
$ git add --all # 添加當前目錄下所有文件
...
$ git commit -m <"message"> # 一次性把暫存區(qū)的所有修改提交到分支
三、版本管理
$ git status # 查看工作區(qū)當前的狀態(tài)
$ git diff # 查看具體修改的內容
$ git reset --hard # 根據前幾位版本號回退到指定版本,其中HEAD表示當前版本
$ git log # 查看提交歷史,以便確定要回退到哪個版本
$ git reflog # 查看命令歷史,以便確定要回到未來的哪個版本
$ git checkout -- # 撤銷工作區(qū)的修改;把誤刪的文件恢復到最新版本(用版本庫的版本替換工作區(qū)的版本)
$ git reset HEAD # 撤銷暫存區(qū)的修改
$ git rm # 從版本庫中刪除該文件
四、使用Github管理Git遠程倉庫
1.創(chuàng)建SSH密鑰:
$ ssh-keygen -t rsa -C <"email@example.com">
生成的私鑰和公鑰分別保存在用戶主目錄里的.ssh目錄的id_rsa和id_rsa.pub兩個文件中。
2.登陸GitHub,Settings->Add SSH Key->在Key文本框里粘貼id_rsa.pub文件的內容->Add Key。 由于Git支持SSH協議,這樣GitHub可以通過你的公鑰確認只有你自己才能推送并識別出你推送的提交確實是你推送的。
3.Create a new repo->填寫Repository name->Create repository,創(chuàng)建一個新的Git倉庫。
$ git remote add origin git@github.com:/.git # 將本地庫與遠程庫關聯起來(使用ssh支持的git協議,速度較快)
$ git remote add origin https://github.com//.git # 將本地庫與遠程庫關聯起來(使用https協議)
$ git push [-u] origin master # 把本地庫的所有內容推送到遠程庫上(-u表示第一次推送,遠程倉庫的默認名稱為origin)
$ git clone git@github.com:/.git # 克隆一份遠程庫到本地
4.多人協作的工作模式
$ git remote [-v] # 查看遠程庫信息(-v顯示可以抓取和推送的origin地址)
$ git checkout -b origin/ # 在本地創(chuàng)建和遠程分支對應的分支
$ git branch --set-upstream-to=origin/ # 建立本地分支和遠程分支的關聯
$ git push origin # 從本地推送分支(若推送失敗,則需先抓取遠程的新提交)
$ git pull # 抓取遠程庫中的最新提交(進行合并,若有沖突先解決沖突再重新推送)
5.參與開源項目
開源項目倉庫->"Fork"即克隆到自己賬號下->“git clone”克隆到本地->修改推送到自己的遠程庫->發(fā)起pull requset等待開源項目庫接受
五、分支管理
$ git branch # 查看分支
$ git branch # 創(chuàng)建分支
$ git checkout / git switch # 切換分支
$ git checkout -b / git switch -c # 創(chuàng)建并切換分支
$ git merge [--no-ff -m <"message">] # 合并某分支到當前分支(--no-ff表示禁用Fast forward模式,在這種模式下刪除分支會丟掉分支信息,禁用后從分支歷史上可以看出分支信息)
$ git branch -d # 刪除分支(若該分支未被合并會報錯)
$ git branch -D # 強制刪除分支
$ git log --graph [ --pretty=oneline --abbrev-commit] # 查看分支合并圖
$ git stash # 保存當前工作現場
$ git stash list # 查看保存的工作現場列表
$ git stash apply [stash@{}] # 恢復工作現場但不刪除stash內容(默認恢復0號stash,也可根據stash_id恢復指定的stash)
$ git stash drop # 刪除stash內容
$ git stash pop # 恢復工作現場并刪除stash內容
$ git cherry-pick # 復制特定的提交到當前分支
$ git rebase # 把本地未push的分叉提交歷史整理成直線
當Git無法自動合并分支時,就必須先解決沖突,即把Git合并失敗的文件手動修改為希望提交的內容,再提交,合并完成。
六、標簽管理
$ git tag # 查看所有標簽
$ git tag [-a] [-m <"message">] [commit_id] # 加標簽(默認打在當前分支的最新提交上,也可根據commit_id打標簽,-a指定標簽名,-m指定說明文字)
$ git show # 查看標簽信息
$ git tag -d # 刪除標簽
$ git push origin # 推送一個本地標簽
$ git push origin --tags # 推送全部未推送過的本地標簽
$ git push origin :refs/tags/ # 刪除一個遠程標簽
最后附學習源泉傳送門:Git官網 廖雪峰老師的Git教程