3 回答

TA貢獻2037條經驗 獲得超6個贊
您想要的命令git ls-remote允許您獲取有關遠程存儲庫的一些信息,但是您無法顯示歷史記錄或列表目錄或該級別的任何內容:本質上,它僅允許您以很高的級別查看遠程對象(可以看到遠程對象)。例如當前的HEAD和標簽)。
唯一可行的方法(如果我理解正確的話)是使用ssh運行遠程命令并返回結果,例如:
ssh me@otherhost "cd repo && git log -n 10"
如果他們可以添加它,那么您想要的就是可愛的功能,但是從我的閱讀來看,這并不是一件容易的事,因為獲取歷史記錄等需要大量信息才能在git本地進行,這時您也可以進行git fetch 。

TA貢獻1871條經驗 獲得超8個贊
Git是分布式版本控制系統,而Subversion是集中式(客戶端-服務器)版本控制系統。他們的工作方式不同;習慣了。請閱讀我的答案,以解釋在StackOverflow 上git等效svn status -u
問題產生的差異的后果。
再說一遍:在集中式版本控制系統(如CVS或Subversion)中,幾乎所有命令都在服務器上處理,并且涉及網絡。很少在本地執行命令。請注意,要具有良好的“ svn狀態”和“ svn差異”性能,Subversion會將已檢出版本的“原始副本”存儲在客戶端上,而不必為那些常見操作進行網絡傳輸(這意味著Subversion檢出= 2 x工作目錄的大?。?。
在分布式版本控制系統(如Git,Mercurial或Bazaar)中,您擁有整個存儲庫的本地副本(克?。?em>幾乎所有命令都在client上執行。很少有命令需要與其他存儲庫(到服務器)的網絡連接。
您可以在服務器上執行的命令數量是有限的。
您可以使用“ git ls-remote <URL>” 列出遠程上的所有引用。
您可以使用
“ git archive --remote = <URL> HEAD” 獲取存儲庫(部分)的快照(如果啟用了遠程服務器)。您只能使用
“ git clone --depth = 1 <URL>” 來克隆最后的一些提交(即“ shallow clone”)。如果服務器為存儲庫提供git Web界面,則可以使用它進行瀏覽。
- 3 回答
- 0 關注
- 552 瀏覽
添加回答
舉報