git和碼雲的使用以及搭建git服務器

 git簡介:


Git是目前世界上最先進的分佈式版本控制系統(VCS-Vetsion Control System)。可以將同一個文件在不同時間的修改結果保存到git倉庫中,隨時可以恢復到某個需要的版本進行查看。 具體功能有:

  1. 紀錄文件的所有歷史變化

  2. 隨時可恢復到任何一個歷史狀態

  3. 多人協作開發或修改

  4. 恢復錯誤

  5. 多功能並行開發


git術語:

工作區(Working Directory):就是你在電腦裏能看到的目錄,比如我的/pro文件夾就是一個工作區。

版本庫(Repository):工作區有一個隱藏目錄.git,這個不算工作區,而是Git的版本庫。Git的版本庫裏存了很多東西,其中最重要的就是稱爲stage(或者叫index)的暫存區,還有Git爲我們自動創建的第一個分支master .


我們把文件往Git版本庫裏添加的時候,是分兩步執行的:

第一步是用git add把文件添加進去,實際上就是把文件修改添加到暫存區;

第二步是用git commit提交更改,實際上就是把暫存區的所有內容提交到當前分支。

因爲我們創建Git版本庫時,Git自動爲我們創建了唯一一個master分支,所以,現在,git commit就是往master分支上提交更改。

你可以簡單理解爲,需要提交的文件修改通通放到暫存區,然後,一次性提交暫存區的所有修改。


git基本命令的使用:             

安裝git , 在Linux系統中是自帶git軟件的 

rpm  -q  git                   #查看git是否安裝

yum  install  -y  git       #安裝git軟件

rpm  -qc  git                  #查看git的配置文件

  1. git  init                                                                 #初始化git , 創建git倉庫

  2. git  config  --global  user.name  '用戶名'          #設置git用戶信息

  3. git  config  --global  user.mail   "用戶郵箱"      #設置git用戶郵箱

  4. git  status                                                            #查看git狀態

  5. git  add  文件                                                       #將文件添加到緩存區中 , 對文件進行跟蹤

  6. git  commit  -m   '提交版本備註信息'                 #提交當前版本 並  備註當前版本信息

  7. git  log                                                                 #查看git日誌

  8. git  checkout  版本hash值                                  #切換版本

git  --help                 #查看幫助

git  help  config        #查看特點的幫助


實例:

#目標:

1、創建一個項目目錄/gg

2、設置git的全局參數

3、用git對目錄中的文件版本進行管理:初始化git數據

4、管理工作如下:(生成文件、提交版本、恢復)

      a、創建新文件

      b、用git將文件添加到git的緩存區

      c、用git提交當前版本,並查看git狀態和日誌

      d、再次在/gg目錄中創建一個文件,參考b、c步驟的步驟處理新添加的文件

      e、再次執行d的操作。

      f、刪除其中一個文件,將刪除操作提交保存到版本信息中,查看git狀態和日誌。

      g、用git恢復到第一次保存的版本,用ls查看目錄中有哪些文件。

      k、查看git日誌文件,恢復到my.txt第3次保存的版本,查看my.txt文件內容。


實驗操作步驟:

先安裝git , 安裝好後初始化一個新git倉庫

創建一個文件夾(或使用已有文件夾)

mkdir  /gg                  #創建一個/gg目錄

cd  /gg                        #進入到/gg目錄中

git  init                        #初始化git , 創建git倉庫

ls  -a                            #查看/gg隱藏文件 , 發現有.git則初始化成功

image.png


進行一些基本信息設置(該步驟在創建好的目錄中設置全局)

git  config  --global  user.name  "user"                     #設置git的全局用戶

git  config  --global  user.mail   "[email protected]"      #設置git用戶的郵箱

git  config  --list                                                          #查看設置

例如:設置了一個gg用戶 , 郵箱爲[email protected]

image.png


在/gg目錄中創建一些文件 , 例如創建a1.txt , a2.txt , a3.txt這些文件

image.png


用git將文件添加到git緩存區中 , 並查看狀態和git日誌

image.png


提交當前版本內容 , 備註爲"file_v1"

image.png


再在創建一個a4.txt , 將a4.txt添加到git緩存區中 , 再提交該版本備註爲"file_v2"

image.png


此時刪除文件a1.txt和a2.txt文件 , 並執行之前的操作

image.png

image.png


查看三次版本的日誌文件 , 並切換到第一次的版本中

image.png


查看版本1的內容 , 看看是否切換成功

image.png


由上圖可以看出切換成功 , 再次切換到版本3 , 看看目錄的中存在哪些文件

image.png


到此實驗結束 , git的使用也到此爲止 !!




 碼雲的簡單使用


碼雲是國內的GitHub平臺 , 也是常用的git遠程倉庫 , 遠程倉庫要不使用現有的git網絡倉庫服務(GitHub , 碼雲等平臺) , 要不就搭建自己的git倉庫 , 在這裏主要講碼雲的使用 , 以及搭建自己的git倉庫


碼雲的官方網址 :https://gitee.com/ 

首先我們應該在碼雲官網註冊一個賬號 , 這裏不做解釋 ; 註冊好賬號後登錄碼雲平臺

第一步 : 在碼雲平臺上創建一個網絡倉庫(項目)

在左上角處可以看到如下圖所示:

image.png

image.png

點擊創建 , 進入以下頁面 ,複製倉庫網址

image.png

上面複製的圖片爲https的那個網址 , 複製好之後 , 在Linux系統中創建一個文件(/20190318) , 命令如下;

image.png

進入到此目錄 , ls查看一下當前文件

image.png

對當前目錄進行點操作 , 比如添加幾個文件 , 將/etc/hosts*複製到當前目錄中 , 如圖:

image.png

此時查看一下git的狀態 , 並添加需要追蹤的文件 

image.png

將當前文件版本提交至碼雲 (git push)

image.png

此時當前版本已經同步到了碼雲上面 , 我們可以在碼雲上面看看文件是否同步

image.png

同理再作做一次修改 , 再次把版本提交到碼雲上面去

image.png

刪除文件後將版本二提交至碼雲

image.png

此時 , 再次查看碼雲上的文件 , 發現碼雲和Linux系統中的文件一樣 , 被刪除的兩個文件都不見了


image.png


由於每次提交都需要輸入用戶名和密碼 , 這樣不僅不方便 , 相對來說也不是安全 , 所以在碼雲上可以上傳公鑰 , 實現免密碼提交同步

只需在本地創建密鑰 , 把公鑰上傳至碼雲即可實現 , 首先生成密鑰

image.png

上傳公鑰至碼雲上面:

右上角點擊圖標 , 再點擊設置:

image.png

進入之後 , 左邊會有一個安全設置 , 點擊ssh公鑰

image.png

上傳公鑰(生成的公鑰在/root/.ssh/di_rsa.pub文件中 , 把裏面的文件複製即可) 如圖: 

image.png

點擊確定 , 提示你輸入密碼(碼雲用戶密碼) ,輸入密碼後,出現以下界面,會產生指紋,如圖:

image.png

成功上傳密鑰後 , 再次創建一個文件 , 用git  clone 將倉庫中的文件下載過來

image.png

提交修改後的當前版本至碼雲上面 , 成功提交(免密提交)

image.png

再次在碼雲上驗證文件是否同步

image.png

此時倉庫中多了a1~a5這5個txt文件 , 同步成功 !!!




 git分支管理


在版本回退裏,你已經知道,每次提交,Git都把它們串成一條時間線,這條時間線就是一個分支。截止到目前,只有一條時間線,在Git裏,這個分支叫主分支(即master)。HEAD嚴格來說不是指向提交,而是指向master,master纔是指向提交的,所以,HEAD指向的就是當前分支。


查看分支:git  branch •說明:默認主分支爲master 

創建分支:git  branch   分支名 

取出分支版本:git   chkeckout  -b  分支名   

說明:git  checkout  -b表示創建並切換到分支


實例:

接着上面碼雲的實驗創建分支

image.png

上傳之後 , 在碼雲上驗證

image.png

image.png

git   merge   dev     合併dev分支到master主分支中 

git   push   origin   master •git   push origin  :dev    刪除遠程的dev分支



 搭建本地git hub服務器


拓撲圖:

系統centos7:192.168.11.11(GitHub服務器) , 192.168.11.12(客戶端)


在192.168.11.11(服務器)操作過程:

  1. 安裝:yun  install  -y  git

  2. 創建文件:mkdir  -pv  /srv  

  3. 進入/srv目錄:cd  /srv

  4. 創建git裸庫git  init  --bare  sample.git

  5. 創建git用戶 , 密碼設置爲git : useradd  git  passwd  git

  6. 修改/srv目錄的屬主屬組:chown  -Rv  git:git  /srv

服務配置完畢


在192.168.11.12(客戶機)配置如下;

  1. 安裝:yum  install  -y  git

  2. 創建目錄: mkdir  -pv  /test

  3. 生成公鑰:ssh-keygen

  4. 上傳密鑰:ssh-copy-id  [email protected]

  5. git  clone  [email protected]:/srv/sample.git

如果克隆成功 , 則說明git客戶端配置成功


以上實例自行去實驗 .







         








發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章