新建一个目录,用来存储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)