前不久,發生的一件事:《OpenArk 被 GitHub 封號》,具體原因這里就不講了。但是,這是經常發生的事情。@Appinn
上傳代碼到 GitHub,可以證明“這是你寫的代碼”;但如何確保你的代碼就是你的代碼,就不太好說了。
于是,去中心化、分布式的 GitHub/GitLab 替代品出現了——Tangled 就是其中之一。

Tangled 是什么?
Tangled 是一個基于 AT Protocol 協議的 Git 協作平臺,通過一種叫做 Knots 的架構,讓你可以自己決定將具體的代碼、元數據保存在哪里。從而真正擁有自己的倉庫。

Bluesky 的 AT Protocol 協議是什么?
去年有一篇文章《Bluesky 是什么?我們注冊了一個賬號》,總結一下就是 Twitter 前 CEO Jack Dorsey 在 2019 年發起(當時他還是 CEO)的新去中心化標準。后來埃隆·馬斯克買了 Twitter 之后,Bluesky 就脫離了如今的 X,并且也由于這次收購,導致大量用戶去 Bluesky 注冊。
小眾軟件也注冊了一個,歡迎關注:
Tangled 使用了 AT 協議來構建開發者的身份體系和社交層,讓“寫代碼”也能變成社交化的、可互操作的活動。
Knots 是什么?
Knot(意為“結”)是一個可以獨立運行的服務,用于托管 Git 倉庫和相關元數據。可以部署在家里的 Raspberry Pi、個人 NAS、或服務器上,可以單人使用,也可以供多人共享。

每個 Knot 都能獨立托管倉庫,也能與其他節點互聯,形成一個開放的代碼協作網絡。可以理解為:
每個 Knot 都是一臺“迷你 GitHub”,而 Tangled 則是把這些結連接起來的網絡。
與 GitHub 的區別
在 GitHub 上,你的身份是一個賬號(比如 github.com/user),而這個身份屬于 GitHub 的數據庫。
在 Tangled 中,身份基于 AT Protocol 的 DID(去中心化標識符),這意味著你可以使用 Bluesky 登錄 Tangled,也可以是使用了 AT Protocol 協議的另外一款服務登錄 Tangled。 而代碼則托管在你自己選擇的 Knot 節點 上。

你既可以用 Tangled 官方托管節點,也可以完全自建。
代價是什么
代價當然是一些微小的麻煩,比如,你需要脫離現有的 GitHub 海量用戶群,項目的曝光度會下降。非 Tangled 用戶無法直接 fork 你的代碼,更無法發送 pull 請求來幫你改代碼。
如果你選擇自己維護 Knot 節點,那些“微小的麻煩”可能會迅速升級為“小麻煩”:節點掛了、網絡出問題了、磁盤滿了——你得親自去修。
就當,是多一個選擇吧。
獲取
原文:http://www.halvbo.cn/what-is-tangled/
這種去中心化的東西,一路以來都更像是興趣而不是實際工具,從2015到現在多少工具了,沒一個真的堪大用。愛好者玩玩可以,拿來工作還不如你自架。