git介紹及簡單使用
Git
1.版本控制
什麼是版本控制 版本迭代
2.版本控制分類
1.本地版本記錄
2.集中式版本控制 代表產品:svn
3.分散式版本控制系統 git
3.git和svn區別
svn集中式版本控制系統
git跟不是版本控制系統
git可以直接看見更新了哪些程式碼和檔案
git是目前世界上最先進的版本控制系統
4.git環境配置
1.下載:[git官網] https://git-scm.com/,下載git對應作業系統的版本。
2.淘寶映象下載:http://npm.taobao.org/mirrors/git-for-windows/
下載好後直接安裝:一直下一步
5.啟動git
安裝成功之後會有git項,選單下有三個程式
Git Bash: unix與Linux風格命令列,使用最多,推薦對多
Git CMD: windows風格命令列
Git GUI: 圖形介面git,不建議初學者使用,儘量先熟悉常用命令
6.基本linux命令學習
平時一定多使用這些基礎命令
1)、cd : 改變目錄。
2)、cd . . 回退到上一個目錄,直接cd進入預設目錄
3)、pwd : 顯示當前所在的目錄路徑。
4)、ls(ll): 都是列出當前目錄中的所有檔案,只不過ll(兩個ll)列出的內容更為詳細。
5)、touch : 新建一個檔案 如 touch index.js 就會在當前目錄下新建一個index.js檔案。
6)、rm: 刪除一個檔案, rm index.js 就會把index.js檔案刪除。
7)、mkdir: 新建一個目錄,就是新建一個資料夾。
8)、rm -r : 刪除一個資料夾, rm -r src 刪除src目錄
9)、mv 移動檔案, mv index.html src index.html 是我們要移動的檔案, src 是目標資料夾,當然, 這樣寫,必須保證檔案和目標資料夾在同一目錄下。
10)、reset 重新初始化終端/清屏。
11)、clear 清屏。
12)、history 檢視命令歷史。
13)、help 幫助。
14)、exit 退出。
15)、#表示註釋
7.git配置
所有的配置檔案都儲存在本地
檢視配置git config -l
檢視系統配置git config --system --list
檢視使用者自己的配置git config --global --list
Git相關配置檔案:
1.Git\etc\gitconfig :Git 安裝目錄下的 gitconfig --system 系統級
2.C:\Users\Administrator\ .gitconfig 只適用於當前登入使用者的配置 --global 全域性
設定使用者名稱與郵箱(使用者標識,必要)
git config --global user.name "********" #名稱
git config --global user.email "**************" #郵箱
這裡也可以直接編輯配置檔案。
8.git基本理論(核心)
工作區域
git本地有三個工作區:
- 工作目錄(WorkSpace)
- 暫存區(Index/Stage)
- 資源庫(Reposity)
- (git遠端倉庫)(Remote)
9.git專案搭建
建立本地倉庫的方式有兩種:一種是建立全新的倉庫,另一種是直接克隆遠端倉庫
-
建立全新的倉庫,需要使用git管理專案的根目錄執行
#在當前的目錄新建一個git程式碼庫 git init
執行後可以看見,僅僅在專案目錄中多了一個.git目錄,關於版本等資訊都在這個目錄裡面
-
克隆遠端倉庫
git clone [url] # https://gitee.com/kuangstudy/openclass.git git clone https://gitee.com/all-to/git-s
.git/config:檔案中記錄提交的倉庫地址
10.git檔案操作
檔案的四種狀態
版本控制就是對檔案版本的控制,要對檔案進行修改、提交等操作,首先要知道檔案當前在什麼狀態,不然可能會提交了現在還不想提交的檔案,或者要提交的檔案沒提交上
- Untracked: 未跟蹤,在此資料夾中,但是並沒有加入到git庫,不參與版本控制。通過git add 狀態變為Staged
- UnModify: 檔案已經入庫,未修改。
- Modified
- Staged
檢視檔案狀態
#檢視指定檔案狀態
git status [filename]
#檢視所有檔案狀態
git status
git add . #新增所有檔案到暫存區
git commit -m "訊息內容" #提交暫存區中的內容到本地倉庫, -m 提交資訊
忽略檔案
#為註釋
*.txt #忽略所有 .txt結尾的檔案,這樣的話上傳就不會被選中!
!lib.txt #但lib.txt除外
/temp #僅忽略專案根目錄下的TODO檔案,不包括其它目錄temp
build/ #忽略build/目錄下的所有檔案
doc/*.txt #會忽略 doc/notes.txt 但不包括 doc/server/arch.txt
11.使用碼雲
- github 是有牆的,比較慢
- 在國內的話,我們一般使用 gitee
- 公司中有時候會搭建自己的gitlab伺服器
設定本機繫結的ssh公鑰,實現免密碼登入
ssh-key -t rsa
進入C:User\Administrator\.ssh
--\.ssh
--\id_rsa
--\id_rsa_pub #內容為公鑰
12.IDEA中整合Git
1.新建專案,繫結git
- 將遠端git檔案目錄拷貝到專案中即可
2.修改檔案,使用IDEA操作git
- 新增到暫存區
- commit提交
- push到遠端倉庫
3.提交測試
有道無術,術尚可求。有術無道,止於術。
說明:GIT分支
多個分支如果並行執行,就會導致我們程式碼不衝突,也就是同時存在多個版本