前言
這篇文章將會講解 Git 專案上傳 GitHub 的流程。
Git 是什麼?
關於 Git 這個版本控制工具,我在之前就有撰寫過一些文章,有興趣的人可以參考後面的連結。
《Git | 版本控制介紹》使用 GitHub 的群體
這是 Git 的伺服器,使用者可以上傳 Git 的專案到伺服器上。
為什麼要用GitHub?
其實除了 GitHub,還有其他許多選擇,像是GitLab、Microsoft Visual Studio、Google Code、Bitbucket、GitBucket等等,相關的程式碼託管平台在網路上找到。
在我學習的歷程中,GitHub 是我最常聽到的網站,也是很多人履歷上會放置的平台,因此使用 GitHub 也許不是最好的選擇,但至少不會是錯誤的選擇。
團體
當一群人組成一個軟體,想要用 Unity 來創作,雖然說也許不是每個人都會使用 Unity ,不過哪怕只是上傳檔案,Git 也能儲存上傳資料,對於專案管理是相當不錯的選擇。
如果有多位程式員協作,那就更應該要使用 Git 來管理專案,這樣可以在引擎外部比對程式碼,對程式員彼此的合作相當有用。
個人
Git 的上傳流程並不複雜,如果熟練使用客戶端,那其實整個流程大約在30秒內就能上傳完畢,所以不會花費太多的時間成本。
對於 Git 的初學者來說,使用 Git 來管理個人專案,也能讓設計師提前熟悉軟體操作,對於未來就業和專案非常有幫助,徵才資訊也會寫需要了解 Git 的操作和流程,因此也能從個人專案熟練 Git 、 GitHub、SorceTree / Desktop 的操作流程。
Unity 專案上傳流程
接下來介紹進行 Unity 專案時,怎麼上傳 GitHub。
1. 在 GitHub-repositories 創建新的專案。

在 GitHub 創建完帳號後,能在自己的介面看到 repositories,點擊進去後點擊「New」後會進入設定頁面,在這裡可以對新建的專案進行一些設定。
名稱 | Repository name
在這裡你可以設定專案名稱,請使用英文命名,詳細的狀況自己操作一遍就能理解了。
介紹 | Description (optional)
當專案是開源專案,並不是自己先組好團隊,那就可以在介紹這邊寫一些關於你這個專案的介紹,如果都是自己人,也可以不用寫。因為有可能多年後回來編輯,所以還是寫看看吧!
公開和私有 | Public / Private
如果是免費的帳戶,只能建立 public,因為GitHub 的宗旨是程式碼交流和討論的地方,只有公開的檔案才能讓其他人搜尋,這個專案依然屬於你,別人要修改內容也依然要找你詢問。
其實應該沒多少人會專注到這些公開的專案啦,社群都這麼難經營了,程式員的社群平台就更難經營了,對不對?
閱讀我 | README
開源專案在使用的東西,這是一個類似潛規則的東西,如果一個專案有一個叫做 README 的檔案,當設計師 Clone 下來後就要打開,通常是開源專案在使用的檔案。
這裡面要撰寫一些關於專案的注意事項、程式碼的命名規則,網路上有詳細的 README 目錄,可以自己去搜尋,如果要鍛鍊自己的能力,建置一個開源專案並經營好它,其實就很足夠了。
忽略檔 | .gitnonre

基本上如果 repositories 中的檔案是一個專案,那自然不會希望設計師全部上傳,譬如說在 Unity 檔案中, 有很多檔案不需要上傳,只有幾個比較重要的資料夾需要上傳而已。
這個可以在檔案創建的時候請 GitHub 幫你建置,也可以之後自己去GitHub上面尋找 Unity 適用的 gitnore。
類似的還有大型檔案使用的 LFS ,使用它可以針對像 PSD 的大型檔案,因為詳細的建制比較複雜,所以可以自己先去查教學。
金鑰 | license
如果要建置開源專案,不是讓專案公開就好,還需要去設定許可權,也就是俗稱的金鑰,設定好以後其他人就知道這份專案哪些事情可以做、哪些不行,至此開源專案才算是成功。
2. 用客戶端 Clone 到自己的電腦。

設定完成以後,會看到大大的 「<>Code」,點擊後可以展開,那一串連結就是 Git 客戶端可以接收的專案連結,不同的客戶端有不同做法,貼上去即可。
3. 於資料夾內創建空 Unity 專案。
現在成功的在自己的電腦 Clone 了一個 GitHub 的空專案,接下來建立一個Unity 專案然後上傳就完成了。
在 Unity 建立專案的時候,選擇剛剛 Clone 下來的資料夾,當 Unity 專案創建完成後,確認 gitnore 跟 Unity 的其他資料在同一層,也就是說 Assets和Project Setting 和 .gitnore 要在同一層。
4. 上傳空專案至 GitHub。
客戶端會更新現在資料夾的狀態,裡面應該會有一些檔案,確保不是超級多的檔案,如果發現裡面有一堆亂碼,那很有可能是 .gitnore 沒有運作成功,確認檔案上傳完成後,在 GitHub 確認看看,檔案在不在。
5. 完成。
基本上這樣就完成了,之後就是看要不要安裝 LFS 或撰寫README,想要測試的話,直接開啟 Unity 進行操作就可以了。
後記
撰寫這篇文章花了我想當多的時間,主要內容其實不少,哪怕只是流程,也讓我撰寫了快兩千五的字數,算是含金量相當高的文章。