The Issue of the Day Before

只同步取用特定目錄

git -

有時候,充滿了妥協。到底是放在一起還是分開放?

Why

在一堆程式中想要拆分他,但又不想另外放一個存儲庫(repository)。

只好單獨抽出某個目錄。

How

舊版的作法

> git init
> git config core.sparseCheckout true  // (1)
> git remote add origin <your/git/url> // (2)
> echo "/you/want/folder/path" > .git/info/sparse-checkout // (3)
> git fetch --depth 1 origin <branch> // (4)
> git checkout <branch> // (5)
  1. 加入 sparseCheckout 指示

  2. 指定你的存儲庫

  3. 加入你要簽出的目錄

  4. 指定分支並指取的最近的版本(不含歷史)

  5. 將目錄簽出

新版的作法

> git clone --branch <branchname> <your/git/url> --no-checkout <directory> // (1)
> cd <directory>
> git sparse-checkout set "/you/want/folder/path" // (2)
> git sparse-checkout init --cone // (3)
  1. 指定分支和存儲庫,但先不簽出

  2. 設定的同時也簽出檔案

  3. 如果需要根目錄下的檔案

閱讀在雲端