北極熊在沙漠中進行遊戲開發和設計的故事

Git 是什麼?全面搞懂Git知識懶人包

Git 觀念篇

Git是什麼?

Git是一個版本控制的工具。

你可以把它理解成一個神奇的魔法畫板。

它會幫你記錄畫板上的每一個步驟,當你的步驟畫錯時,只需要告訴它一聲,它就會幫你自動還原到指定的步驟。

更厲害的是,你可以跟多個朋友一起合作畫畫,每個人畫一個部分(頭,身體,左手,右手),最後再把每個區塊整合在一起。

Git 和 Github 有什麼不同?

Git 是版本控制的工具

Github 是有支援Git服務的雲端空間。

換句話說,Git是管理你的畫作步驟的魔法畫板

Github 是幫你把這些步驟全部儲存在雲端(類似Google Drive)的地方。

除了 Github之外,比較有名的Git雲端空間是Gitlab, BitBucket, 和 Gitee。

Git 可視化工具是什麼?

Git 可視化工具是好看的Git介面軟體。

透過介面UI點擊按鈕,直覺的使用Git功能。

Git 下載安裝之後是純指令(CLI),

沒有介面的工具,對新手不太友好。

因此出現許多了Git視覺化的介面工具

其中最有名的是SourceTree, GitKraken, 和 Github 推出的 Github Desktop.

我最推薦使用的是GitKraken

雖然要付費,但是介面設計直覺又好看!

更新速度很快,工作起來會很爽,強烈推薦沒辦法接受醜醜介面的你。

如果你不想花錢

那麼最多人用的就是Source Tree,是開源免費的軟體,上手之後就很直覺。

不需要再去煩惱別的工具了,不直覺不好用。

最簡單的GitFlow流程

上面這張圖是最簡單的Git操作流程:

  1. 使用Git Clone把專案下載到電腦
  2. 對專案進行一番修改
  3. 使用Git Push把修改的專案推上雲端
  4. 使用Git Pull下載最新的專案下來繼續修改
  5. 重複第三步

    Git的文件夾資料結構:

    Git資料夾被默認隱藏起來了。

    MacOS : (快捷鍵) Command + Shift + .

    Window:透過Menu打開

    打開後會看到一個隱藏的 .git 文件夾

    有顯示這個代表這個專案有被Git管控,可以安心亂改!(誤

    Gitignore是什麼?

    Gitignore 是用來告訴Git不要紀錄什麼的文件。

    有時候有很多資源是不要把步驟全部紀錄下來的,像是很大型的文件(模型,影片,圖片)。

    這時候就要用 .gitignore 來定義什麼不要紀錄

    這個文件不會自己生成

    你需要右鍵新增一個文本,然後自己命名 .gitignore

    .gitignore 使用方式:

    # 這是個註解
    
    #這是不要加進版本控制的目錄
    /Library/ 
    /Packages/
    .vscode/
    
    # 這是不要加進版本控制的後綴文件, *代表任意文件名
    *.csproj
    *.sln
    *.tmp
    *.apk
    
    # 這是一個複雜的寫法
    !/[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin*

    如果你有更複雜的需求,這個是官方的文檔說明文件

    多人協助的 Git Flow

    如果有兩個人以上進行開發的話:

    1. A和B同時下載專案到本地電腦
    2. 然後新開一個自己的分支(Branch)
    3. 各自修改專案,然後推到自己的分支(Branch)
    4. 推倒主要的分支上
    5. 進行兩個分支的合併整合
    6. 整合完衝突之後,重複步驟3

    Git 常用指令大全

    指令解釋
    git clone <url>把Gitlab/Github上的專案下載到本地電腦
    git add .把所有修改的檔案新增到版本控制裡
    git commit -m <message>紀錄這次的修改改了什麼東西
    git push <origin>把本地電腦的版本更新到Github/Gitlab上
    git pull把Github/Gitlab上的專案下載下來並且合併到當前的Branch
    git fetch -a把Github/Gitlab上的專案下載下來但不合併Branch
    git branch查看,新增,刪除 分支Branch的指令
    git checkout <branch>切換分支Branch的指令

    上面這些是比較常用到的指令,完整的指令可以查看這裡

    Git LFS 是什麼?

    Git LFS(Large File Storage)使用來存放超級大檔案的地方。

    在 Git 版本控制裡只會保留一個指向大文件的小文件。

    當你需要這個大文件時,Git LFS 會自動幫你下載。

    Share this article
    Shareable URL
    Prev Post

    GPT Explorer

    Next Post

    Unity 上傳文件到 GCP Cloud Storage

    發佈留言

    發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

    Read next

    與身體對話,就是與神對話

    身體裡的每一個細胞、每一個器官都有「意識」同時也有「潛意識」 身體各個部位要帶給你什麼訊息: 身體部位 訊號 特質 怎麼做 肩部骨骼與肌肉 硬邦邦 不懂得麻煩人,不懂得撒嬌,不懂得拜托人…

    讀書會 3 – <有錢人跟你想的不一樣>

    這次我們讀《有錢人跟你想的不一樣》 這是一本影響我對金錢觀念最大的一本書 第一次瞭解到原來頭腦的意識觀念 -> 決定了自己可以擁有多少財富 讓我們一起來進入這場讀書會吧: 1. 檢視對於金錢的觀念…

    如何在Text Mesh Pro使用中文字?

    在Unity中要使用TextMeshPro中文字的時候會出現亂碼,每次要建字要輸入1萬多個中文字也很麻煩,本文將使用動態生成的方式建置TMP的中文字體。