iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 4
0
Modern Web

用Django從零打造Python Web App系列 第 4

Day4. 專案導入版本管理

  • 分享至 

  • xImage
  •  

在真正實作專案內容前,還有一件很重要的事情,那就是將你的專案納入版本管理,如此一來,我們每次做的更動,都可以確實被記錄起來,今天在專案實作過程中,如果發現難以解決的問題,可以將專案回復到某個時間點。就不會因為某次異動造成的不明錯誤,而需要重新設計專案。

版本管理與工具簡介

版本管理工具主要分成兩類:

  • 集中式管理:例如SVN (Subnersion)
  • 分散式管理:例如Git

我們要採用的是Git,也是業界許多公司採用的主流。

由於我們需要一個網路主機來採用Git管理我們的專案,在此我們使用世界最大的Git Server免費服務,同時也是Open Source開發者最大社群平台GitHub。

大家常會把Git跟GitHub混淆,Git是一套軟體工具、而GitHub是提供Git Server的服務供應商。

設定Git & GitHub

我們要做的設定包括:

  1. 到GitHub申請帳號
  2. 在本機電腦上安裝Git
  3. 透過指令操作,將專案資料夾設定為Git版本管理

到GitHub申請帳號

請至GitHub官網(https://github.com/)申請帳號

在本機電腦上安裝Git

  • Windows使用者:

    • 至官網下載Git安裝檔:https://git-scm.com/download/win
    • 安裝後,打開Git Bash程式,輸入指令 $ git --version,如果可以看到版本號碼,就表示安裝完成
  • macOS使用者:

    • 如果有安裝Xcode軟體,就會連同Git一起安裝了
    • 打開Terminal,輸入指令 $ git --version,如果可以看到版本號碼,就表示安裝完成

我使用的Git版本是git version 2.24.3 (Apple Git-128)

針對macOS使用者,建議再多一個步驟,將Visual Studo Code設定為commit預設編輯器。

  1. 開啟Visual Studio Code,按下Shift + Command + P
  2. 在VS code上方搜尋列輸入install,找到install code command in PATH,點選後安裝
  3. 打開Terminal,輸入以下指令 $ git config --global core.editor "code --wait" 即完成

版本管理基礎操作

Git的功能非常強大,在此我們介紹的,都是跟專案較為相關的操作,包括:

  1. 將專案程式碼納入Git版本管理
  2. 將每次程式碼改動的差異記錄起來,同步上傳至GitHub
  3. 跟GitHub上程式碼保持同步更新

將專案程式碼納入Git版本管理

在Git文件,把這個動作稱為create a repositary,repositary就是你的程式碼,簡稱repo,步驟如下:

  1. 登入Github.com,點選綠色按鈕New
  2. 進入Create a new repository 頁面,輸入專案名稱,不用勾選任何項目,按下Create repository
  3. 在電腦打開Termial,輸入指令

將每次程式碼改動的差異記錄起來,同步上傳至GitHub

  1. 完成程式碼的編輯,並且測試確保品質

  2. 打開Terminal,輸入指令

    • $ git add . : 將程式碼的改動鎖定

    • $ git commit : 將程式碼的改動鎖定打包,並且加入說明,建立一個commit,就像存檔紀錄的概念,每個紀錄都有唯一id管理

    • 如果是第一次進行此動作,請輸入以下指令,如果不是第一次進行commit上傳,請跳過這步驟

      • 登入Github.com,找到剛剛新建的那個專案網址,點選綠色按鈕Code,複製repo clone網址

      • 打開Terminal

        • 使用cd 檔案路徑 ,將當前路徑切換到~/webapps/workspace/blog

        • 接著將這個本地repository跟git server上respository連結,輸入 $git remote add origin 你複製的網址

        • 設定個人識別資料輸入指令

          $ git config --global user.name "你的名字"
          $ git config --global user.email 你的email`
          
    • $ git push -u origin master : 將commit推送至GitHub上的對應專案repository,完成同步

跟GitHub上程式碼保持同步更新

通常是多人共同協作編輯同一個專案程式碼,或是你個人有兩台以上電腦,例如家中跟公司各一台,你都希望可以隨時進行編輯工作,會運用到這個技巧。

  1. 首先下載這個專案的repo到你的電腦中:去GitHub官網,登入後找到你的專案,點選綠色按鈕Code,複製repo clone網址
  2. 打開電腦的Terminal,輸入指令$ git clone 剛剛複製的網址,按下Enter即會開始下載當前最新版本repo
  3. 如果有多人同時協作,為避免版本時間差,建議下載後,再使用指令$ repo sync 進行最新專案版本的同步

本日總結

  1. 因為還不熟悉這個編輯器,調整圖片大小,所以很多需要圖片說明的部分尚未加入,未來會持續更新,敬請見諒。

  2. 很多書或是課程都會特別介紹Git的使用,尤其是多人協作的應用,但工具就只是協助人類解決問題,不要為了使用而使用。

要將工具活用的好,首先還是要思考,我們理想的良好協作方式是什麼模樣,再利用工具的功能來實現,例如Git commit的說明紀錄,是否有規定格式,讓大家在說明自己的改動差異時,是一目了然的;版本分支管理是否有主窗口負責彙整統合,利用Tag標示重要版本號碼,讓大家都很清楚目前上線與開發中的版本的狀態。

希望大家可以透過這系列文章,不只完成程式的功能,更能掌握做事的風格與方法。


上一篇
Day3. 建立第一個Django專案
下一篇
Day5. 實作網站的功能:Views
系列文
用Django從零打造Python Web App5
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言