Git簡介
Git 是一個分布式版本控制工具,通常用來對軟件開發過程中的源代碼文件進行管理。通過Git 倉庫來存儲和管理這些文件,Git 倉庫分為兩種:
- 本地倉庫:開發人員自己電腦上的 Git倉庫。
- 遠程倉庫:遠程服務器上的 Git 倉庫。
commit: 提交, 將本地文件和版本信息保存到本地倉庫。
push: 推送, 將本地倉庫文件和版本信息上傳到遠程倉庫。
pull: 拉取, 將遠程倉庫文件和版本信息下載到本地倉庫。
?
當安裝Git后首先要做到事情是設置用戶名稱和email地址, 這是非常重要的, 因為每次Git提交都會使用該用戶的信息。
打開Git命令行執行下面命令:?
- 設置用戶信息
????????git config? --global user.name "itcast"(設置用戶名)
????????git config --global user.email "itcast@itcast.cn"(設置email地址)
- 查看配置信息
????????git config --list
上面設置的user.name和user.email并不是我們在注冊碼云賬號時使用的用戶名和郵箱, 此處可以任意設置。
獲取Git倉庫
本地倉庫初始化
?執行步驟如下:
- 在任意目錄下創建一個空目錄(例如repo1)作為我們的本地Git倉庫。
- 進入這個目錄中,點擊右鍵打開Git bash窗口。
- 執行命令 git init。
如果在當前目錄中看到.git文件夾(此文件夾為隱藏文件夾)則說明Git倉庫創建成功。
本地克隆遠程倉庫
可以通過Git提供的命令從遠程倉庫進行克隆,將遠程倉庫克隆到本地。
命令形式:?git clone 【遠程Git倉庫地址】
基本概念
版本庫: 前面看到的.git隱藏文件夾就是版本庫,版本庫中存儲了很多配置信息、日志信息和文件版本信息等。
工作區: 包含.git文件夾的目錄就是工作區,也稱為工作目錄,主要用于存放開發的代碼。(.git所在文件夾以及其同級文件夾就是工作區)
暫存區: .git文件夾中有很多文件,其中有一個index文件就是暫存區,也可以叫做stage。暫存區是一個臨時保存修改文件的地方。
工作區文件狀態
查看git文件狀態
git status?
Git工作區中的文件存在兩種狀態:
untracked 未跟蹤(未被納入版本控制)
tracked 已跟蹤(被納入版本控制)
????????Unmodified 未修改狀態
????????Modified 已修改狀態
????????staged 已暫存狀態
注意:這些文件的狀態會隨著我們執行Git的命令發生變化
本地倉庫操作
本地倉庫常用命令如下:?
- git status????????????????????????????????查看文件狀態
- git add? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 將文件的修改加入暫存區
- git reset? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 將暫存區的文件取消暫存或者是切換到指定版本
- git commit? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?將暫存區的文件修改提交到版本庫
- git log? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??查看日志
遠程倉庫操作
前面執行的命令操作都是針對的本地倉庫,本節我們會學習關于遠程倉庫的一些操作,具體包括:
- git remote? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?查看遠程倉庫
- git remote add <遠程倉庫別名>? ?<url>? ? ? ? ? ? ? ? ? ? 添加遠程倉庫
- git clone? ?<url>? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?從遠程倉庫克隆
- git pull?<遠程倉庫別名> <遠程分支名> ? ?? ? ? ? ? ? ? ? ?從遠程倉庫拉取
- git push? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?推送到遠程倉庫
# 查看遠程倉庫的詳細信息(包括URL)
git remote -v
分支操作
分支是Git 使用過程中非常重要的概念。使用分支意味著你可以把你的工作從開發主線上分離開來,以免影響開發主線。同一個倉庫可以有多個分支,各個分支相互獨立,互不干擾。
通過git init 命令創建本地倉庫時默認會創建一個master分支。
本節我們會學習關于分支的相關命令,具體如下:
#查看分支
git branch
#創建分支
git branch 「name]
#切換分支
git checkout 「name]
#推送至遠程倉庫分支
git push[shortName][name]
#合并分支
git merge name
#刪除分支
git branch -d [mme]
標簽操作
Git 中的標簽,指的是某個分支某個特定時間點的狀態。通過標簽,可以很方便的切換到標記時的狀態。比較有代表性的是人們會使用這個功能來標記發布結點(v1.8、v1.2等)。
#列出已有的標簽
git tag
#創建標簽
git tag [name]
#將標簽推送至遠程倉庫
git push [shortName] [name]
#檢出標簽
git checkout -b [branch] [name]
?IDEA集成操作
配置本地倉庫: 點創建Git倉庫之后選擇Git倉庫地址
拉取, 提交, 推送操作?
連接遠程倉庫: 點管理遠程,之后添加遠程倉庫(填地址)
??
分支操作: 新建分支
?沖突解決
兩個用戶對同一個文件的同一行代碼進行操作時提交就會出現沖突, 先提交的沒問題, 后提交就會沖突, 此時雙擊文件就能看到三個版本的代碼, 最左邊是后提交的代碼, 中間是最初的代碼, 右邊是先提交的代碼沖突的代碼會被標注點雙箭頭是使用對應代碼另一個點×就是忽略另一個版本的代碼最后點Apply就行