Azure DevOps 是微軟提供的開發工具服務平台,整合了版本控制、工作項目追蹤、自動化建置等功能。對於 iOS 開發者來說,它提供了:
依據官方說明,個人開發者可以享有以下免費額度:
這些免費額度對於個人專案來說已經相當充足。
最後系統會要求綁定信用卡,這主要是為了驗證身分,在免費額度內並不會產生費用。如後續說明,Azure DevOps 的免費額度對個人專案來說綽綽有餘。
登入後,第一步是建立一個組織。
你可以從 Azure Portal 進入,或是直接進入 Azure DevOps。
如果你是從 Azure Portal 進入,就點選左上角,然後選 Azure DevOps。
接著,
在組織內建立新專案:
在 Advanced 選項中:
在公司的專案中使用的是 Agile 流程。它提供了 User Stories、Features 和 Tasks 等工作項目,能很好地幫助團隊拆解需求並追蹤所交付的程式碼。
然而,對於單人開發的個人專案來說,這樣的框架似乎大了一些。我的主要需求為記錄「開發事項」、可以清楚知道哪些項目的狀態,是尚未開始,進行中還是已完成,並且對於每個工作項目,可以清楚知道與哪一次程式碼的提交掛勾,並不需要管理複雜的需求層級或團隊協作。
Basic 流程正好符合這個情境。它移除了 Agile 中關於使用者故事的層級,讓我們能直接建立和追蹤「議題 (Issue)」,相對輕量。
詳細差別的介紹可以參考微軟官方說明。
建立完畢後,專案儀表板便會顯示出來,代表我們完成了第一步。
左側的功能選單我們暫不詳述,在後續文章使用到時會再逐一介紹。
建立專案後,Azure DevOps 會自動為我們建立一個 Git repo。首先,我們需要將這個空的 repo clone 到本地:
如果使用 HTTPS,記得要先按 Generate Git Credentials,他會給你一組密碼,本地 git clone 的時候輸入。
在你想要存放專案的目錄下執行:
git clone YOUR_REPO_URL
接著,終端機會提示您輸入密碼,貼上剛剛產生的憑證即可。
在將任何程式碼加入版本控制之前,養成好習慣,第一步驟是設定 .gitignore 檔案。這個檔案會告訴 Git 哪些檔案或目錄不應該被追蹤,例如使用者個人的設定檔、編譯過程中產生的暫存檔、或是包含敏感資訊的檔案。這能確保我們的 repo 保持乾淨,只包含必要的原始碼。
vi .gitignore
建立並編輯
.gitignore
至於要排除哪些檔案,可以參考 gitignore.io 這個網站,只要輸入關鍵字,他會自動幫你產生常用的忽略清單。
按下創建後,將內容複製到剛剛建立的 .gitignore
後儲存就 OK 了。
現在我們已經有了一個乾淨的本地 repo,接著要在這個目錄中建立 Xcode 專案。
打開 Xcode,選取 Create New Project。
如果你的 mac 還沒有安裝 Xcode,請先到 App Store 下載。
我們這次要建立的是 iPhone 的 App,因此上方的平台要選擇「iOS」,並選擇 「App」來建立一個新專案。
選擇 Next 來進入下一個流程。
接著會出現要你輸入新建立專案所需的基本資訊。
Product Name: 就是你的專案名稱(Project Name),組織名稱(Organization Identifier)因為我是個人,所以我就設定自己的名稱。
Bundle identifier: 這個蠻重要的,iOS Xcode 的 bundle identifier 是用來辨識你的 App,相當於應用的身份證字號。也就是說,每個上架到 App Store 以及安裝到設備上的 App 都必須有獨一無二的 bundle identifier,不能與他人或自己已有的 App 重覆,否則無法上架或安裝。
Interface: 這裡可以選擇 UIkit 或是 SwiftUI,我們這次要使用 SwiftUI 來建立 App。
Language: 我們使用 Swift。
Testing System 與 Storage 就先保持預設值 None 不選擇。讓我們按 Next 前進下一個畫面。
Hello world!
一個最基本的 SwiftUI iOS App 模板就建立好了。
現在我們可以將 Xcode 專案加入版控了:
git add .
git commit -m 'Init commit'
git push -u origin main
因為我們是從空的 repo clone 下來的,所以不需要執行 git init 和 git remote add origin。這裡的 -u (或 --set-upstream) 參數會將本地的 main 分支與遠端的 origin/main 分支建立關聯。設定完成後,未來在這個分支上,只需要輸入 git push 即可,無需再指定遠端和分支名稱。
今天我們完成了 Azure DevOps 環境設定和 Xcode 專案的建立。下一篇我們將開始進行了解開發專案所需的基礎知識