開源項目

如何 DIY 自己的 Git 託管項目?——別怕,我有 Pagure!

Pagure 是一個用 Python 編寫的新的、功能齊全的、提供 Web 服務的 Git 倉庫。它類似於 Github 和 Gitlab ,同時允許開源貢獻者分享彼此的資源,實現代碼和內容上的合作。順便說一句, Pagure 法語譯為「寄居蟹」,在項目文本的 LOGO 上容易發現這一點哦。

Pagure 是 Fedora Engineering 團隊成員—— Pierre-Yves Chibon 的心血結晶。 Fedora Engineering 團隊專註於基於 Python 的解決方案,因為 Python 簡單易學,從而降低了貢獻者的入門門檻。因此 Pagure 不僅提供了項目託管服務,同時也鼓勵新人維護並改進這個服務。

Facebook 、 Google 等公司已經表明: Python 是可以做到高性能的。 Pagure 也不例外,它給 Web 用戶提供了不錯的體驗。你可以看到數十個高度活躍的項目已經被託管到 Pagure 上了,當然 Pagure 本身的代碼也託管到上面。

git-introduction-workshop-for-scientists-1-638

Pagure 的功能

Pagure 提供了類似 Git 程序提供的很多功能:

  • 用戶,群組,項目庫和克隆服務的自助創建。
  • 支持 HTTPS 和 SSH 訪問代碼倉庫。
  • 支持多認證登錄,可以通過 Pagure 像 Ipsilon 這樣提供 OpenID 的外部認證登錄。所以你可以鏈接 Pagure  到 LDAP 、系統賬號或者其他的賬戶。
  • pull 請求基於工作流,有完整的討論和評價。
  • Web 介面提供文本編輯器。
  • 能夠執行 signoffs 和對 pull 請求進行評價打分。
  • 問題跟蹤,文檔和版本管理。
  • 對倉庫活動提供郵件提醒服務。
  • 支持不同 Pagure 實例的同步。
  • 完全的自由、免費。
  • 還有......很多很多.......

不僅如此,Pagure 在內部還提供以下額外的功能:

  • 所以的問題和 pull 請求的追蹤元數據是作為側倉庫來提供可追蹤性和可移植性的。
  • Web 文件夾和項目在線管理中將文檔作為側倉庫進行管理。
  • 每個項目可以選擇完全可擴展的 web-hooks 系統。

託管自己的 Git 項目

Pagure 擁有允許用戶建立自己的託管服務項目的能力。這項服務是低開銷的並依賴於其他自由軟體的,這些自由軟體你可以在 Fedora 和其他發行版中找到。該項目文檔可以幫助你開始部署 Pagure ,你可以使用普通工具從基於 RPM 的發行版中安裝或者使用源碼部署 Pagure ,兩種方法文檔中都提供了。

Pagure 已經在 Fedora 中用於生產幾個月了。然而,一個重要的里程碑才剛剛出現:1.0版本的發布。第一個主要版本提供了全新的用戶界面。感謝 Fedora Engineering 團隊的設計師( Ryan Lerch )進行的全新設計。

Pagure 的使用方式同 Github 等同類系統沒有太大的區別。Pagure 假設項目是協作的,所以它們沒有命名空間。拷貝,卻在另一方面是存在命名空間的,這使得上游的倉庫清楚明了。雖然拷貝一個上游倉庫的方法有些不同。但是 pull 請求的方法是相同的。因此其它 Git 系統的用戶立刻上手 Pagure 是沒有問題的。

171416002862539

Pagure 的未來

Pagure 的發展仍在繼續,很多人都在進行修復和完善。未來可能會添加以下的一些功能:

  • 自定義主題。
  • 同步如 Github 等其它服務商倉庫。
  • 支持個人項目的命名空間。
  • 支持如 Mailman 3 之類的郵件列表。

對有一點 Python 基礎的人來說,Pagure 的代碼是十分容易理解的。貢獻者歡迎大家查看問題清單並參與到項目中。為了修復一個 bug ,你可以拷貝 Pagure 的代碼,克隆到自己的倉庫中,提交和推送修復補丁,並提交一個 Pagure 的 pull 請求。

Linux Story 溫馨提示:詳細信息請點擊原文查看

原文鏈接:https://fedoramagazine.org/pagure-diy-git-project-hosting/

本文鏈接:http://www.linuxstory.org/pagure-diy-git-project-hosting/

轉載請註明,否則將追究相關責任。

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
TO LIVE IS TO CHANGE THE WORLD

    You may also like

    2 Comments

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:開源項目

    開源項目

    Pandora:一個讓你呼吸順暢的ChatGPT

    本文介紹了一款名為Pandora的開源項目,它是一款用於解決國內用戶使用ChatGPT時遇到的種種問題的客戶端。本文詳細介紹了Pandora的功能特性、安裝方法、部署方式以及Docker部署方法。
    開源新聞

    FTP 伺服器:Vsftpd vs ProFTPd

    FTP(文件傳輸協議)是用於傳輸文件的標準協議。像 Vsftpd 和 ProFTPd 這樣的 FTP 伺服器提供了一種訪問和傳輸遠程伺服器上存儲的文件的方法。 Vsftpd Vsftpd(Very S […]