iT邦幫忙

2024 iThome 鐵人賽

DAY 13
0
Modern Web

新手友善園區-如何架設人生第一個網站系列 第 13

Day-13 版本控制的平台:GitHub

  • 分享至 

  • xImage
  •  

在昨天的文章中,我們介紹了Git這個強大的版本控制工具,讓我們可以管理專案中的不同版本變化,追蹤每一次的修改、創建分支,並在團隊協作中非常高效。今天,我們將深入介紹GitHub ,一個與Git搭配使用的線上平台,讓你能夠更容易地與他人協作並分享你的程式碼專案。

GitHub是什麼

GitHub 是一個線上版本庫託管平台,專為 Git 設計。換句話說,GitHub 是你儲存 Git 專案的雲端平台。它的功能不僅僅是幫你儲存專案的歷史版本,它還提供了許多協作工具,讓開發者能夠方便地和世界各地的其他開發者合作,特別是在遠端工作日益普遍的今天,GitHub 的重要性愈加顯現。

主要功能

  1. 專案託管:你可以將 Git 版本庫上傳到 GitHub 上,方便地保存專案、分享給他人,甚至公開展示你的開源項目。
  2. 協作開發:GitHub 提供了非常強大的協作功能。不同開發者可以在同一個專案中各自創建分支、提出修改(pull request),並讓專案負責人進行審核後合併。這大大提高了多人合作的效率。
  3. 版本控制與歷史回溯:GitHub 允許你隨時查看每個版本的歷史變更,查看每一次修改是由誰、在什麼時候進行的。如果出現問題,還能迅速回到之前的版本。
  4. 社群與開源:GitHub 不只是專案儲存庫,它更是一個全球開發者的社群。你可以找到數百萬個開源項目,並加入其中,提出修改建議或參與討論。

為什麼使用 GitHub?

GitHub 的功能遠不止是託管版本庫。它的許多工具和功能讓開發者在團隊合作時如虎添翼,以下是一些 GitHub 的關鍵優勢:

  1. Pull Requests(拉取請求):這是一個非常強大的功能,允許開發者在他們的分支中進行修改後,向主分支發出合併(merge)請求。這樣,專案負責人可以在合併修改之前檢查代碼,避免未經檢查的變更進入主分支。
  2. Issues(問題追蹤):GitHub 提供了問題追蹤系統,允許開發者和用戶報告專案中的 bug 或建議新功能。這讓專案管理更加有序,所有問題和回饋都可以在一個地方進行討論和解決。
  3. Wiki 與 Documentation(文件):每個 GitHub 專案都可以擁有自己的 Wiki 和文件區,開發者可以在這裡撰寫使用說明、技術文檔,或者記錄開發過程。這對於大型專案特別有用,讓團隊成員和用戶能夠快速找到所需的信息。
  4. Actions 自動化:GitHub Actions 是一個非常強大的功能,允許開發者設置自動化流程。例如,當有人提交代碼時,GitHub 可以自動運行測試、編譯程式碼,甚至進行自動部署,這讓開發流程更加順暢。

靜態網站與 GitHub Pages

什麼是靜態網站?

在解釋 GitHub Pages 之前,我們先來了解什麼是靜態網站。簡單來說,靜態網站是指不包含動態伺服器端處理的網站,所有的內容都固定寫在 HTML、CSS 和 JavaScript 文件中。使用者訪問網站時,瀏覽器直接下載並展示這些文件,沒有經過任何伺服器端的運算或數據庫查詢。
相較於靜態網站,動態網站則會根據使用者的請求,透過伺服器運算生成即時的網頁內容。例如,當你登錄 Facebook 時,伺服器會根據你的帳號資料,動態生成屬於你的個人頁面。
由於靜態網站不需要伺服器端的邏輯運算,只需傳送純粹的文件,因此它更快、更簡單,特別適合個人作品集、部落格或文檔展示。

GitHub Pages:靜態網站託管平台

GitHub 提供了一個免費的服務叫做 GitHub Pages,讓開發者可以將版本庫中的內容自動轉換成靜態網站並進行展示。這項服務非常適合用來建立個人作品集、專案文件、技術部落格等。

生成靜態網站的步驟:

1.創建版本庫:首先,你需要在 GitHub 上創建一個版本庫,儲存你要展示的網站文件,例如 index.html、style.css 等。

2.啟用 GitHub Pages:在 GitHub 版本庫的設定(Settings)中,找到 GitHub Pages 的部分,選擇要作為網站根目錄的分支(通常是 main 或 gh-pages),GitHub 會自動生成網站並提供一個網址。

3.查看網站:完成設定後,GitHub 會根據你版本庫中的文件生成靜態網站,並提供一個網址供他人訪問。只要把網站內容更新到版本庫,網站也會自動更新。

為什麼 GitHub Pages 只能生成靜態網站?

GitHub Pages 之所以僅限於靜態網站,是因為它不提供伺服器端的執行環境,無法運行 PHP、Python、Node.js 等後端語言,也不支援數據庫等後端系統。由於沒有伺服器端邏輯,它只能展示預先寫好的 HTML、CSS 和 JavaScript 文件。
雖然 GitHub Pages 的限制是只能生成靜態網站,但它有一個非常大的優點——簡單快速。因為不需要處理後端的複雜邏輯,靜態網站的部署非常快速,且只要有基本的網頁設計知識,就能輕鬆上手。同時,對於想要展示作品或建立部落格的人來說,靜態網站已經足夠應付日常需求。
大家也可以從前幾天的文章的HTML、CSS、JavaScript的程式碼放在GitHub上,生成的網址就可以分享給其他人了

結論

GitHub 不僅是一個版本控制工具,它還提供了如 Pull RequestsIssuesGitHub ActionsGitHub Pages 等強大的協作工具,讓開發者更高效地管理專案。特別是 GitHub Pages,它讓開發者可以輕鬆生成並託管靜態網站,無需花費太多時間和資源來配置伺服器。

透過使用 Git 和 GitHub,無論是個人開發者還是團隊,都能在專案中享受到強大的版本控制功能和協作體驗。GitHub Pages 則進一步提供了展示和分享專案成果的便捷途徑,讓開發者更好地展示他們的創作。


上一篇
Day-12 版本控制的基礎:Git
下一篇
Day-14 Hexo 的誕生與核心功能:打造簡單高效的靜態網站
系列文
新手友善園區-如何架設人生第一個網站30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言