git克隆repo中的文件或者文件夹

新建一个目录,用来存储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)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章