2021年4月20日

Git Server & Client built in a intranet on win10 實作區網內建置Git伺服器版本庫

    如果想做版本控制,但又怕code放在雲端上不安全,在自己家裡或工作室裡自建一個區網內的版本控制伺服器也是個很棒的選擇,既然Win10共享資料夾做得到這件事,或許將Git Server放在NAS私有雲上也是個選擇喔。


    一、環境模擬圖

      我此次實驗環境是在學校,布局我猜想如下圖(僅供參考)。

      我作為Git Server的電腦是//student-65這台電腦,作為Git client的則為旁邊的//student-66與//student-67這兩台電腦。



    二、Git Server setting伺服器端的設定

      Git init 建立版本庫

      我在D磁碟建立repositories資料夾


      repositories右鍵內容,進到共用頁籤,點選進階共用勾選共用此資料夾。



      接著進到共用,加入讀取/寫入的權限



      開啟Git Bash

      將目錄指定到 D://repositories

      使用指令建立伺服器端版本庫【git init –bare 資料夾名稱】


      伺服器端做到這裏就完成了。 Server site setting finish.


    三、Git Server localhost testing 伺服器端本機測試

      那我在伺服器本機先進行測試。

      我在D磁碟建了testxxx資料夾,透過clone指令複製伺服端的版本庫到本機端,建立本機版本庫。

      1.Clone伺服端的版本庫回來本機端

      ps.clone指令後面的資料夾路徑是反斜線\,別直接複製資料夾上的貼上阿,要記得改成反斜線。


      2.新增index.html,並且Commit “第一次”


      3.建立與伺服器端的連線

      可用git remote -v查看是否有伺服端的連線,由於前面我使用clone指令連線到伺服端取的版本庫,git預設會自動以origin名稱建立連線。


      4.佈至伺服器端的版本庫

    四、Git Client端

      這是從區網的另一台電腦測試

      1.clone

      在D磁碟建1234資料夾,將伺服端資料直接Clone回來

      指令: git clone //student-65/respositories/sample.git


      2.Add new file + commit 新增page1.html

      接著在sample資料夾裡新增page1.html,並Commit為"page1"


      3.push,最後將更新後的Sample push回伺服端


      下圖為用TortoiseGit看到的git日誌。


    五、Pull data from Git Server 從伺服器端更新至本地版本庫

      回到伺服器端,我到D://testxxx/sample路徑下將伺服端的最新版資料用pull指令更新下來。


      從日誌上可看出確實有達到透過區網讓多台電腦共同存取一個git server版本庫的效果。


    參考資料

    沒有留言:

    張貼留言