问题
git push后出现文件夹后面跟@+数字,是因为出现了子模块。@后面的数字是哈希值,用于确定唯一的提交状态。
文件push时会压缩,然后上传同时生成一串检验字符串,at后面的数字就是检验字符串的前面部分。
原因
文件夹内还有.git,导致这些文件夹push后变成了子模块
解决思路
- 删除原来的子文件夹的.git
- 删除本地git缓存
- 重新add,push
四、解决方法
方法一:不变成子模块
rm -rf .git
# 代表子模块文件夹内的.git目录
git rm -r --cached .
git add .
git commit -m "init"
# push到远程新分支
git push origin master
方法二:下载子模块
cd 需要下载的文件夹
git submodule update --init --recursive