我嘗試從git://git.kernel.org
克隆Linux
分支到本地機器:爲什麼使用git協議克隆項目沒有反應?
# git clone git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux -b perf/core
Cloning into 'linux'...
但沒有迴應。使用tcpdump
和Wireshark
檢查捕獲的數據包:
我們可以看到
TCP
連接已建立。但在客戶使用git smart protocol
發送請求後,沒有任何迴應。
任何人都可以提供一些線索嗎?
更新:
(1)根據@MariaInesParnisari建議,使用--verbose
標誌,但它並沒有表現出更多的信息:
# git clone git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux -b perf/core --verbose
Cloning into 'linux'...
Looking up git.kernel.org ... done.
Connecting to git.kernel.org (port 9418) ... 147.75.110.187 done.
(2)更改爲https
協議,它的工作:
# git clone https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux -b perf/core --verbose
Cloning into 'linux'...
POST git-upload-pack (gzip 25015 to 12570 bytes)
remote: Counting objects: 5287534, done.
remote: Compressing objects: 100% (807310/807310), done.
嘗試添加'--verbose'標誌和後輸出 –
@ MariaInesParnisari更新,謝謝! –
這可能是一個防止連接的公司防火牆嗎? (我看到你從git.kernel.org得到了一個同步信息,我的net-sec知識有點生疏,但我認爲FW有時會將此信息發送到主機的地方,故意嘗試導致超時,從而阻止客戶端) – visibleman