iT邦幫忙

2025 iThome 鐵人賽

DAY 5
0
自我挑戰組

30天 Git 版本控制實戰筆記系列 第 5

Day 5:連接 GitHub 雲端協作

  • 分享至 

  • xImage
  •  

今日目標
• 把昨天建立的專案上傳到 GitHub
• 學習 git push 和 git pull
• 體驗本地與雲端同步
操作步驟
步驟1:在 GitHub 建立 Repository
在瀏覽器操作:

  1. 登入 GitHub (https://github.com)
  2. 點右上角的 "+" → 選 "New repository"
  3. Repository name: company-website
  4. Description: 我的第一個公司網站專案
  5. 選擇 Public(公開)
  6. 重要:不要勾選 "Add a README file"(我們本地已經有檔案了)
  7. 點 "Create repository"
    步驟2:GitHub 會給你指令
    建立完成後,GitHub 會顯示類似這樣的指令:
    git remote add origin https://github.com/你的用戶名/company-website.git
    git branch -M main
    git push -u origin main

詳細解釋這三個指令的意思:
指令1:git remote add origin https://github.com/...
意思:
• git remote add = 新增一個遠端倉庫連結
• origin = 遠端倉庫的別名(慣例叫法)
https://github.com/... = GitHub 上你專案的網址
比喻:
就像在電話簿裡新增聯絡人:
• 聯絡人名字:origin
• 電話號碼:GitHub 網址


指令2:git branch -M main
意思:
• git branch -M main = 把目前分支改名為 main
• 有些電腦預設是 master,GitHub 現在偏好 main
為什麼要這樣?
確保本地分支名稱和 GitHub 一致:
• 本地:main
• GitHub:main


指令3:git push -u origin main
意思:
• git push = 推送(上傳)
• origin = 推送到 origin(就是 GitHub)
• main = 推送 main 分支
• -u = 設定上游,以後只要打 git push 就好
比喻:
• 就像寄包裹到朋友家
• origin = 朋友的地址
• main = 包裹內容(你的程式碼)
• -u = 設定常用地址,下次寄包裹自動寄到這

補充:
Branch 是什麼?
簡單比喻:
想像你在寫一份報告:
• 主線(main 分支):正式的報告版本 (不可改)
• 草稿(feature 分支):你試驗新想法的版本 (可以改)
你可以在草稿裡亂改,不會影響正式版本!
實際工作順序是:

  1. 在 feature 分支開發 (草稿)
  2. 測試功能是否正常
  3. 確認沒問題後,合併到 main (正式版)
  4. Main 分支保持穩定

步驟3:連接本地專案到 GitHub

確保在專案資料夾內

cd company-website

檢查目前狀態

git status

添加遠端倉庫(複製你自己的 GitHub 網址)

git remote add origin https://github.com/你的用戶名/company-website.git

檢查連接是否成功

git remote -v #-v 是 --verbose 的縮寫,意思是「詳細模式」

應該顯示你的 GitHub 網址

步驟4:第一次推送到 GitHub

確保分支名稱是 main

git branch -M main

推送到 GitHub(第一次需要 -u 參數)

git push -u origin main
可能會要求輸入 GitHub 帳號密碼或 token
步驟5:驗證上傳成功

  1. 重新整理你的 GitHub 專案頁面
  2. 應該看到:
    o index.html
    o about.html
    o css 資料夾(內含 style.css)
    o js 和 images 空資料夾
    步驟6:在 GitHub 網頁直接編輯(模擬同事修改)
  3. 在 GitHub 上點擊 "Add a README"
  4. 或點擊任何檔案後點 "Edit" 按鈕
  5. 加入一些內容,例如:

公司網站專案

這是我用來學習 Git 的練習專案。

功能

  • 首頁展示
  • 關於我們頁面
  • 響應式設計
  1. 在網頁下方寫 commit 訊息:"新增專案說明文件"
  2. 點 "Commit changes"
    步驟7:本地拉取雲端更新

拉取 GitHub 上的最新版本到本地

git pull origin main

檢查是否有新檔案

ls

應該看到新的 README.md 檔案

步驟8:本地修改並推送
用編輯器修改 index.html,在 最後加入:

推送到 GitHub(之後不需要 -u 參數)

git push origin main
步驟9:確認同步成功

  1. 在 GitHub 重新整理頁面
  2. 點擊 index.html 查看內容
  3. 應該看到新增的 footer
    重要概念理解
    本地 vs 遠端:
    • Local Repository(本地):你電腦裡的版本
    • Remote Repository(遠端):GitHub 上的版本
    • 兩邊要保持同步!
    核心指令:
    git push origin main # 本地 → GitHub(上傳)
    git pull origin main # GitHub → 本地(下載)
    工作流程:
  4. 本地寫程式
  5. git add + git commit
  6. git push(上傳到 GitHub)
  7. 其他人可以 git pull(下載你的更新)
    常見問題解決
    Q: push 時要求帳號密碼?
    A: GitHub 現在需要 Personal Access Token:
  8. GitHub → Settings → Developer settings → Personal access tokens
  9. 產生新的 token
  10. 用 token 當密碼
    Q: 出現 "rejected" 錯誤?
    A: 先 pull 再 push:
    git pull origin main
    git push origin main

補充:
當你遇到 "rejected" 錯誤時,通常是因為遠端倉庫有你本地沒有的更新,所以 Git 拒絕你的 push 操作來避免覆蓋別人的更改。
為什麼會出現這個錯誤?

  1. 其他人推送了更新 - 同事或協作者在你之後推送了新的提交
  2. 你在不同裝置上工作 - 例如在另一台電腦或線上編輯器修改了代碼
  3. GitHub 網頁端直接編輯 - 你可能在 GitHub 網站上直接修改了文件
  4. 分支不同步 - 本地分支落後於遠端分支
    為什麼要先 pull 再 push?
    git pull # 先拉取遠端更新到本地
    git push # 再推送你的更改
    pull 的作用:
    • 下載遠端倉庫的最新更改
    • 將遠端更改與你的本地更改合併
    • 確保你的本地倉庫是最新狀態
    這樣做的好處:
    • 避免覆蓋別人的工作
    • 讓 Git 自動處理可能的衝突
    • 保持版本歷史的完整性
    這是 Git 的一個安全機制,確保協作開發時不會意外丟失代碼。

Q: 分支名稱是 master 不是 main?
A: 沒關係,用 master:
git push origin master
今日成果檢查
• ✅ GitHub 上有你的專案
• ✅ 本地和 GitHub 內容一致
• ✅ 學會 push 和 pull 操作
• ✅ 體驗雲端協作感覺


上一篇
Day 4 :業界專案管理實戰
下一篇
Day 6:分支管理入門實戰
系列文
30天 Git 版本控制實戰筆記8
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言