2016-10-17 37 views
0

我想託管我自己的Git遠程存儲庫,然後通過REST API從我的應用程序(spring boot)中公開它。我的問題是如何克隆/叉等工作? 當客戶端調用我的克隆API時,通過Http響應傳輸存儲庫中的所有文件/內容在技術上是否可行? 有沒有人取得過這個成果,最好的方法是什麼?Git存儲庫上的RESTful API

+0

您認爲RESTful API能夠完成什麼? REST並不意味着HTTP - git已經可以通過HTTP工作。創建一個不同的端點將不起作用 –

回答

0

你不想自己創造一些類似Github的東西,對嗎? :)

但解決您的具體問題,克隆/叉顯然應該不是以HTTP響應/請求傳送文件,而是應該向暴露的REST API類似與HTTP參數repositoryName HTTP請求POST cloneRepository服務器(設置爲要克隆的存儲庫名稱),然後由Spring MVC控制器處理,然後在託管Git存儲庫的服務器上啓動Git命令。

+1

或者您可以使用CGI和[git-http-backend](https://git-scm.com/docs/git-http-backend)。 –

+0

謝謝。事實上,除了我的彈簧啓動應用程序外,我已經在我的服務器上託管了Git遠程存儲庫。從我的應用程序中,我需要管理這個存儲庫。就像我在應用程序(從UI)中克隆回購庫時一樣,我希望由我的應用程序執行git克隆,這會將回購內容傳輸到客戶端。在服務器上再次克隆它是我想避免的。 –

+0

@manubhat如果我現在理解正確(似乎我誤解了你的問題),你應該遵循Panagiotis Kanavos的建議也許http://www.parallelsymmetry.com/howto/git.jsp也許會有所幫助。 –