You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何使用git push无法将全部项目文件提交至GitHub?

解决git提交仅上传少量文件且status显示外层目录内容的问题

问题根源

从你提供的git status输出可以看到,所有变更文件都是../或../../../../开头,这说明你当前执行git命令的目录(xyz)并不是git仓库的根目录——git仓库实际是在更上层的目录初始化的,导致xyz文件夹里的文件根本没被纳入这个仓库的跟踪范围,自然无法提交到GitHub。

解决步骤

  1. 确认当前git仓库的根目录
    执行以下命令,查看当前git仓库的绝对路径:

    git rev-parse --show-toplevel
    

    输出的路径肯定不是xyz文件夹的路径,而是上层某个目录。

  2. 清理错误仓库并重新初始化

    • 先删除上层误创建的git仓库(如果这个仓库是无用的):
      切换到那个仓库根目录,执行:
      rm -rf .git
      
    • 回到xyz文件夹,重新初始化独立的git仓库:
      cd /path/to/xyz  # 替换成你的xyz文件夹实际路径
      git init
      git add .
      git commit -m "Initial commit: add all files in xyz"
      git remote add origin https://github.com/你的用户名/你的仓库名.git  # 替换成你的GitHub仓库地址
      git push -u origin main
      
  3. 如果上层仓库有用,保留并单独处理xyz
    若上层的git仓库是其他项目的仓库,需要将xyz作为独立仓库:

    • 检查xyz文件夹内是否有嵌套的.git目录,若有则删除:rm -rf xyz/.git
    • 进入xyz文件夹,执行上述的git init、git add .等步骤,关联新的GitHub远程仓库即可。

注意事项

  • 执行git命令前,用pwd确认当前目录,确保和git rev-parse --show-toplevel的输出一致,保证在正确的仓库根目录操作。
  • 提交前再次执行git status,确认跟踪的是xyz文件夹内的文件,而非外层的系统文件或其他项目文件。

内容的提问来源于stack exchange,提问作者Kevin Grant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 03:52:50