緯育 2026-0529.1
出自頂極製作所
本次系列講座聚焦版本控制(Git 與 GitHub)、分支策略、.gitignore 與 reset 的實務、git worktree 的現代應用,以及在 AI 時代的開發心法與工具運用。並延伸至行動與跨平台開發(Flutter/iOS)、網路通訊基礎(HTTP/HTTPS、FTP、SMTP、DNS、Port、API)、AWS 核心雲端觀念(Region/AZ、on-demand、帳務與責任界線)、IAM 安全治理(使用者、群組、Policy、Role、最小權限、MFA、三種存取方式),以及實務稽核(Credential Report、Access Advisor)。內容亦包含職涯與學習建議、AWS SAA 與資源、校園與職涯軼事,以及一段關於國際政治與衛星系統的對話片段與課程運行細節紀錄。
Git 協作與工作流程、指令與檔案
- 多人協作衝突與正確流程
- 同時修改並推送同檔案會導致衝突與覆蓋風險;應先拉取(pull)再推送(push)。
- 傳統 Git Flow 與現代精簡策略
- 傳統分支:master、developer、feature、release、hotfix、office;流程含開分支、整合、測試、上線與 hotfix 回灌。
- 單向原則:master 進 developer 僅初始;hotfix 修畢須回灌 developer。
- 精簡策略(e-hub 提案):除 master 外一律視為 feature,降低學習與維護成本;main/master 命名差異屬文化習慣。
- 多版本環境管理
- 以沙盒/模擬環境、打包成 Bucket 上傳至 EC2 等方式管理多版本;僅靠 merge 難以達成快速切換。
- 檔案狀態與視覺提示
- 編輯器顏色代表檔案狀態;善用 git status 或工具(如 rp-status)檢視變更。
- .gitignore
- 定義忽略的檔案/目錄(暫存、建置輸出、私密設定如 API Key);統一團隊規則,避免敏感資訊入庫;可使用語言/專案範本。
- git reset
- 作用:回到指定 commit。
- 模式差異:
- soft:HEAD 指向指定版本,變更保留於工作目錄(add 前),最安全。
- mixed(預設):變更保留於索引(staging)。
- hard:捨棄還原點後的所有變更,清空工作目錄。
- 建議:不確定時用 --soft,避免檔案遺失。
- commit ID 與雜湊
- 版本以不可變雜湊識別;reset 需複製目標 commit ID。
git worktree 的概念與應用
- 核心功能
- 在同一 repository 建立多個工作目錄映射至不同分支(如前端/後端),利於並行開發與 AI Agent 分工。
- 指令與範例
- git worktree add [路徑] [分支];完成後以 PR/MR 合回主幹(master/main);任務結束可刪除資料夾不影響主庫。
- 動機與優點
- 對應 folder-based 的 CI/CD 與多 Agent 協作;技術早有之,隨 AI Agent 興起更實用。
現代程式設計與 AI 輔助
- 學習方式轉變與 Know-How
- 不必死記所有語法,需理解前後端、DevOps、Docker(Image/Dockerfile)等核心概念以審視 AI 產出。
- LLM 原理與提示工程
- 逐步生成、Token 概念與成本不透明、自注意力機制解長上下文問題。
- 提示需清晰與結構化;模糊提示現代 AI 也能透過澄清提問完成。
- 框架與協作
- 使用 Spring Boot、Flask 等框架以 API 模組化;保持乾淨的程式/資料夾結構利於 AI 理解。
- Git 分支操作
- 現場示範建立功能分支;注意路徑語法與命名清晰。
行動與跨平台開發、生態與網路基礎
- Flutter 與 iOS
- Flutter 原生支援 iOS/Android/桌面,具高效能與生產力;業界案例:Google Pay 全面採用 Flutter。
- 網路協定與安全
- HTTP/HTTPS:TLS/SSL 加密保護傳輸;未加密網站被標示不安全。
- FTP/SMTP 基本用途;熟悉 URL 與 localhost。
- DNS 與 AWS 對應
- DNS 將網域映射至 IP/後端資源;EC2 有 Public/Private IP,重啟可能更換 Public IP,宜以 DNS/彈性 IP 管理。
- Port 與服務分流
- 同網域透過不同 Port(如 8080、8081)路由到不同服務。
- API 設計與文件
- 參數與回傳清楚定義;文件品質至關重要。
程式學習心法、職涯與 AWS 核心雲端觀念
- 勇氣與體感
- 透過簡單靜態網頁與逐步實作建立信心,降低對系統操作的恐懼。
- 技術選擇建議
- 後端與穩定技術優先:Java(企業偏好、Spring 生態)、Python(易學、AI 任務)、C#/.NET(與 Java 類似,視公司技術棧選擇其一)。
- 前端市場受 AI 影響,競爭與替代加劇,非強烈興趣者可暫緩投入。
- AWS on-demand 與 Region/AZ
- on-demand 彈性資源相對傳統 dedicated;Region 與多 AZ 用於容災與高可用;選擇考量法規、延遲、價格、服務可用性。
- 帳務與責任界線
- 雲商負責硬體基建,使用者負責自身操作與資料;設定帳單通知避免超額扣款。
AWS IAM 安全治理與實務
- 基本概念
- 管理身份與存取範圍;身份含人/服務帳號/角色;Root 嚴格管控,啟用 MFA。
- 使用者、群組、Policy
- 依部門建立 User Group,群組承載多條 Policy(JSON),使用者加入即繼承權限;避免群組巢狀。
- Policy 結構:Version、Statement(Sid、Effect、Action、Resource),EPARC(Effect、Principal、Action、Resource、Condition)作為考照框架。
- JSON 作為主流傳遞格式;權限遵循最小權限原則。
- 三種存取方式
- Console、CLI(憑證與腳本自動化)、SDK(程式直呼 AWS 服務,需憑證妥善保管)。
- 密碼政策與 MFA 工具
- 企業密碼定期更換與複雜度要求;建議 Google Authenticator,熟悉後可用 Apple Keychain。
- 稽核與權限優化
- Credential Report 檢查殭屍帳號、密碼狀態;Access Advisor 檢視授權使用情形,移除未用權限以落實最小權限。
- IAM Role(服務對服務)
- 服務(如 EC2)操作他服務(如 S3)需設定 Role 並附掛 Policy;為考照與實務重點。