ichitenfont / I.Ming

I.Ming ( I.明體 / 一点明朝体 / 一點明體 )
Other
898 stars 39 forks source link

加入 git tags 或 GitHub Releases,方便軟體包裝 #30

Closed ShamrockLee closed 3 months ago

ShamrockLee commented 4 years ago

許多專案會使用 git tag 標示版本所在的 commit,在 GitHub 上會顯示成 release。有些 package manager 只收錄管方 release 的版本(有 git tag 的),有些會要求從 release 以外的 commit 編譯的 package 要使用特殊的版本號,並加上 unstable 作為區別。

若能使用 git tag 為專案標示版本,對於包裝與維護軟體包會便利不少。

這篇 StackOverflow 貼文中有使用 git tag 或 GitHub 網站標示版本的步驟: https://stackoverflow.com/questions/18216991/create-a-tag-in-a-github-repository#18223354

i-font commented 4 years ago

我們都是用GitHub's web interface來處理,也許日後嘗試一下吧。請問可以介紹一下圖中各欄應該塡寫甚麼嗎?

圖片

ShamrockLee commented 4 years ago

填寫內容:

結果看起來會像這樣: https://github.com/adobe-fonts/source-han-serif/releases

抱歉一直打擾您。謝謝您回覆!

CarrotDLaw commented 4 months ago

圖片

建議未來把字型等二進制檔案 (.ttf, .pdf 等) 放到 'attach binaries...' 那裏,git repository 只保留 changelog、readme 等文字檔案。這樣就可以讓大家直接在每個 release 的頁面下載字型,而且把二進制文件放於 git repository 中會造成 repository 極大(現在已有 1.2 GB)。傳承字形標準化文件 亦同理。

ronaldtse commented 3 months ago

Is it possible to help produce a release that only contains the font artifacts? The current release includes the entire repo, with versions 3 to 8 of the fonts. That would prevent users from needing to download hundreds of megabytes in order to use I.Ming. Thanks!

SyaoranHinata commented 3 months ago

圖片

建議未來把字型等二進制檔案 (.ttf, .pdf 等) 放到 'attach binaries...' 那裏,git repository 只保留 changelog、readme 等文字檔案。這樣就可以讓大家直接在每個 release 的頁面下載字型,而且把二進制文件放於 git repository 中會造成 repository 極大(現在已有 1.2 GB)。傳承字形標準化文件 亦同理。

抱歉不怎麼明白閣下說的到底是怎麼一回事。^^;;;;; 目前我們是按三樓的說明來操作,而 Attach binaries 是漏空的,甚麼都沒有放。而我們已在 Describe this release 的文字描述中說明大家到該版本的目錄中下載。

SyaoranHinata commented 3 months ago

Is it possible to help produce a release that only contains the font artifacts? The current release includes the entire repo, with versions 3 to 8 of the fonts. That would prevent users from needing to download hundreds of megabytes in order to use I.Ming. Thanks!

抱歉,比樓上朋友的留言,我們更看不明白閣下的…… 請問指下所說的是甚麼?能用方便我們理解的說法簡單說明嗎?不好意思。

CarrotDLaw commented 3 months ago

圖片

建議未來把字型等二進制檔案 (.ttf, .pdf 等) 放到 'attach binaries...' 那裏,git repository 只保留 changelog、readme 等文字檔案。這樣就可以讓大家直接在每個 release 的頁面下載字型,而且把二進制文件放於 git repository 中會造成 repository 極大(現在已有 1.2 GB)。傳承字形標準化文件 亦同理。

抱歉不怎麼明白閣下說的到底是怎麼一回事。^^;;;;; 目前我們是按三樓的說明來操作,而 Attach binaries 是漏空的,甚麼都沒有放。而我們已在 Describe this release 的文字描述中說明大家到該版本的目錄中下載。

就是未來有新 release 時,把 .ttf.pdf 等文件放到 'attach binaries...' 中,不要放在 git repository 中。git repository 只存放 .txt.md 等文件。

hfhchan commented 3 months ago

Is it possible to help produce a release that only contains the font artifacts? The current release includes the entire repo, with versions 3 to 8 of the fonts. That would prevent users from needing to download hundreds of megabytes in order to use I.Ming. Thanks!

That binary is generated by GitHub. We cannot do anything about it.

We will attach binaries on that page for future releases, and I will update the old releases too.

就是未來有新 release 時,把 .ttf 和 .pdf 等文件放到 'attach binaries...' 中,不要放在 git repository 中。git repository 只存放 .txt 或 .md 等文件。

.ttf 檔案本來就是源文件,若將之刪除變成僅附件發佈,則有違採用版本控制原意。

hfhchan commented 3 months ago

I've just added the font binaries for v8.10, v8.00, v7.01 and v7.00. Since the original request was to add GitHub releases only, and not about changing the repository folder structure, I will close this issue as completed.

hfhchan commented 3 months ago

@SyaoranHinata is the main maintainer, and since he is quite busy till at least the end of this year, we will hold off any repository folder structure changes for now, as it will require him to learn a lot more about git version control.

We'll deal with it when we have more binaries. For now, please use the binaries from the release page instead of cloning the whole repository.

ronaldtse commented 3 months ago

抱歉,比樓上朋友的留言,我們更看不明白閣下的…… 請問指下所說的是甚麼?能用方便我們理解的說法簡單說明嗎?不好意思。

您好!抱歉,我的留言為大家帶來了不必要的煩惱。

基本上GitHub repository 是開發者用來儲存程式原始碼的地方。由源代碼產生出來的製成品(artifact),包括電腦程式、代碼集、字體檔案,根據慣常做法,都是與源代碼分開出版的。

這就是為什麼Git本身是利用單行對比(line by line comparison diff)的方式儲存原代碼的變更,而非使用二進制碼對比(binary diff)。

GitHub Releases 本身就是用來提供一個與GitHub Repository 有掛鉤但不相同的,用來發布二進制碼檔案的地方。以上留言曾經提及過,原來的Releases 頁有從GitHub Repository自動製造的壓縮包。但其實這個壓縮包是GitHub Repository 整個源碼的壓縮包,由於現今Repository整理的方式,包括了所有I.Ming 版本的字體檔案,所以體積非常大,當中亦包含了普通字體用戶不需要的資料,所以並不適合於用戶下載。

另外,也需要提及的,就是GitHub Releases 中,由開發者自己上傳的壓縮包,與GitHub 自己產生的壓縮包,下載的速度和連結也有很大分別。由開發者自己上傳的壓縮包或檔案,GitHub 會提供最大速度下載,而且沒有對自動化下載節流(no throttling for automated downloads)。 GitHub Repository自動產生的壓縮包,不單止下載速度非常慢,而且對機械人下載有限制。

從GitHub Repository直接下載檔案,對用家更加麻煩,因為不單下載速度慢,對自動化下載有限制,而且GitHub並不提供永久性連結(persistent URL),當系統更改連結的方法,或者Repository的結構有改變,用戶便不能使用同樣的連結下載了。

現今很多使用字體的用家,並不需要人手下載字體檔案,在安裝於自己的電腦上,而是使用自動化的方式,直接從網上下載字體。

我從Fontist project 過來提出這樣的想法,是因為 有用家 (@NightFurySL2001)希望將貴字體加進Fontist 的自動化字體下載目錄,為的就是能在不同的自動化編程或出版環境可以使用貴字體。

在上傳的壓縮包中,最好能提供字體檔案以及有關許可(Licence),讓用戶一次便下載所須的資料。

以上 @hfhchan 已經做到此要求,非常感謝。

另外感謝I.Ming 字體開發者 @SyaoranHinata ,祝字體用戶蒸蒸日上。🙏