Git教程筆記整理(總結(jié)分享)

本篇文章給大家?guī)砹岁P(guān)于git的相關(guān)知識,其中主要是git的教程筆記整理,包括了版本控制器方式、安裝、基本操作和操作指令等等,希望對大家有幫助。

Git教程筆記整理(總結(jié)分享)

推薦學(xué)習(xí):《git

一、版本控制器方式

1.1 實(shí)際場景

備份 代碼還原 協(xié)同開發(fā) 追溯代碼問題

1.2 版本控制方式

  1. 集中式版本控制工具 svn和CVS
    每個(gè)人都從中央服務(wù)器下載代碼,修改后提交到中央服務(wù)器。
  2. 分布式版本控制工具 git
    每個(gè)人電腦上都是一個(gè)完整的庫,互相都可以看到對方的更改。
    Git教程筆記整理(總結(jié)分享)

二、安裝

  1. 解釋:
    · Git GUI:Git提供的圖形界面工具
    · Git bash:Git提供的命令行工具
  2. 安裝完之后先設(shè)置郵箱(郵箱確定不同的人員):
    打開Git Bash—
    設(shè)置人git config –global user.name “name” —
    設(shè)置郵箱git config –global user.email “email”
  3. 可通過git config –global user.name查看是否設(shè)置成功

三、開始操作

3.1創(chuàng)建本地倉庫

1)創(chuàng)建一個(gè)空目錄作為本地Git倉庫
2)進(jìn)入這個(gè)目錄中,點(diǎn)擊右鍵打開Git bash窗口
3) 執(zhí)行命令git init
4) 創(chuàng)建成功后可以在文件夾下看到隱藏的.git目錄
之后可以查看第四部分的基礎(chǔ)操作

3.2 分支

幾乎所有的版本控制都支持分支。每個(gè)人有獨(dú)立的分支,開發(fā)互不影響。完成之后再合并在一起。HEAD指向的就是當(dāng)前的分支,修改只會改變當(dāng)前分支的內(nèi)容。
? ? ? git branch 查看分支
? ? ? git branch name創(chuàng)建name分支
? ? ? git checkout 分支名 切換分支 ? ? ? ? git checkout -b 分支名 創(chuàng)建并切換
? ? ? git merge 分支名1 合并分支 ? ?分支1和當(dāng)前分支合并
? ? ? ? ? ? 如果不同分支有沖突:則不會自動合并,將不同版本的信息存在文件中需要人工選擇
? ? ? git branch -d name刪除name分支 -D強(qiáng)制刪除

3.3 Git遠(yuǎn)程倉庫

常用 github、碼云、gitlab(企業(yè)常用),課程以碼云為例。
1)打開gitee網(wǎng)頁登錄— 新建倉庫—
2)配置ssh公鑰:

  1. 在bash中輸入ssh-keygen -t rsa(不斷回車如果公鑰已經(jīng)存在則自動覆蓋)
  2. cat ~/.ssh/id_rsa.pub獲取公鑰 — 復(fù)制輸出的公鑰 — 打開gitee的用戶-設(shè)置-SSH公鑰
  3. 驗(yàn)證配置是否成功:ssh -T git@gitee.com

3)連接本地倉庫

  1. 打開在gitee上創(chuàng)建的倉庫,復(fù)制SSH(遠(yuǎn)程倉庫的地址)
  2. 在bash中g(shù)it remote add name(自己設(shè)置的名字) ssh地址 注意這之前要git init
  3. 查看是否配置成功git remote 出現(xiàn)自己設(shè)置的名字就成功了
  4. 本地代碼上傳git push [本地分支名]:[遠(yuǎn)端分支名] 注意這之前要現(xiàn)在本地倉庫中提交
    其完整代碼是git push [-f] [–set-upstream][遠(yuǎn)端名稱] [本地分支名]:[遠(yuǎn)端分支名]
    [-f]:強(qiáng)制覆蓋遠(yuǎn)端代碼
    [–set-upstream] 表示建立本地和遠(yuǎn)端分支的關(guān)聯(lián)關(guān)系
    遠(yuǎn)端分支名和本地相同時(shí)可省略 :[遠(yuǎn)端分支名] 兩者已關(guān)聯(lián)則可省略 [本地分支名]:[遠(yuǎn)端分支名]

4)其他操作

  1. 從遠(yuǎn)程倉庫克隆 git clone [本地路徑]
  2. 從遠(yuǎn)程倉庫中抓取 git fetch [remote name] [branch name]
    ? ? ?將倉庫里的更新抓取到本地,不會進(jìn)行合并。如果不指定遠(yuǎn)端名稱和分支名,則抓取所有并更新當(dāng)前分支。如果需要合并,則需要git merge [remote name]
  3. 拉取命令git pull [remote name] [branch name] 即抓取+合并
  4. 解決合并沖突
    AB 都從遠(yuǎn)端clone后,A本地修改后push到遠(yuǎn)端,B從本地修改相同文件的同一內(nèi)容后,想從遠(yuǎn)端倉庫中拉取,則會合并沖突,和本地不同分支有沖突解決方式相同。

3.4 在idea中使用git

沒看不用idea

四、基礎(chǔ)操作指令

之前創(chuàng)建的文件夾下除了.git文件之外的其他文件都是我們的工作目錄。在工作目錄下對文件進(jìn)行修改(增加、刪除、更新),這些修改的狀態(tài)會隨著我們執(zhí)行Git命令而發(fā)生變化
git add :從無到有新創(chuàng)建一個(gè)文件(未跟蹤)或 修改已有文件(未暫存) 使用 git add 命令 將文件存至?xí)捍鎱^(qū)。(工作區(qū)—暫存區(qū))
git commit :暫存區(qū)進(jìn)入倉庫,生成一次提交記錄。(暫存區(qū)—倉庫)git commit -m “評論內(nèi)容”
git status :查看工作目錄和暫存區(qū)的狀態(tài)
git log:查看提交的歷史

  • –all 顯示所有分支
  • –pretty=oneline 將提交信息顯示為一行
  • –abbrev-commit 使得輸出的commit更簡短
  • –graph 以圖顯示

git reset –hard commitID :版本回退
可以用git -log 或git log指令查看commitID
touch .gitignore 將不想?yún)⑴c更新的文件名加入,就可以不再參與倉庫管理

推薦學(xué)習(xí):《git

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊12 分享