2013-12-17 79 views
13

有沒有辦法從Unix命令行中下載git repo的內容,該命令行並沒有拉下.git目錄中的所有內容?我只想要最新版本的repo目錄和文件,而不是所有的差異。下載沒有所有.git內容的Git回購?

另外,是否有可能在不使用git命令(例如使用wget或curl)的情況下完成此操作?

謝謝。

+0

是有可能以'git'命令取代用戶名和回購名稱:http://stackoverflow.com/questions/1209999/using-git-對獲得-不管三七二十一,最新修訂版本。 我不知道git內部結構是什麼,但我嚴重懷疑wget或curl會有用。 – CompuChip

+0

你認爲「git回購的內容」是什麼?導致當前版本的提交歷史記錄是作爲存儲庫的一部分。下載最新版本就像下載最新版本的ZIP:沒有歷史,只是文件。如果沒有發佈,'git archive'應該有所幫助,請參閱http://stackoverflow.com/questions/160608/how-to-do-a-git-export-like-svn-export – Sven

+0

關閉 - 關於從一個網站,而不是編程,或者關於如何使用DCVS – random

回答

7

據我所知,最接近的做法是做一個git clone --depth=1(以避免從服務器獲取比最新版本更多的信息),然後刪除.git目錄。至於git而言,.git目錄的回購;檢出的文件只是爲了您的方便。 :)

13

github上有一個鏈接,下載回購的.zip文件,那麼請嘗試使用

wget https://github.com/[user]/[repo]/archive/[branch].zip 

[user][repo][branch]與相應的字段所取代。

+0

通過API,您可以獲得壓縮包而不是zipball。 [文章](https://help.github.com/articles/downloading-files-from-the-command-line)[API參考](http://developer.github.com/v3/repos/contents/# get-archive-link) – Charlie

+0

@Charlie非常真實,但OP要求'wget'的解決方案,所以這就是我給他們的。 – randomusername

3

第2部分:您可以嘗試正確

wget http://github.com/[username]/[repo]/archive/master.zip