新建一個目錄,用來存儲git clone的文件,進入目錄執行
git init
然後再執行
git remote add -f origin 遠端倉庫地址(例如:[email protected]:/home/kk/Desktop/test)
再執行:
git config core.sparsecheckout true
將要clone的文件或者文件夾寫入以下文件
echo "b" >> .git/info/sparse-checkout
將遠端倉庫中文件拉下來
git pull origin master
添加文件或目錄到當前repo
echo filename >> .git/info/sparse-checkout
git read-tree -mu HEAD
git pull origin master
刪除當前repo中不需要跟蹤的文件或目錄
sed -i '/filename/d' .git/info/sparse-checkout
git read-tree -mu HEAD
git pull origin master
客戶端修改端口,無法clone
先在服務器端加端口映射,將客戶端都轉發到22端口上
iptables -t nat -A PREROUTING -p tcp --dport 59022 -j REDIRECT --to-ports 22
這樣只要監聽到來自59022的數據都轉發到22端口處理
然後修改第二步中的執行命令,強制使用ssh協議和端口映射,再clone即可
git remote add -f origin ssh://遠端倉庫地址(例如:ssh://[email protected]:59022/home/kk/Desktop/test)