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

jopen 8年前發布 | 9K 次閱讀 Git

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

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

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

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

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 是沒有問題的。

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

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/

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!