为何新Git仓库会添加其他独立文件夹的文件与提交记录?
解决Bitbucket仓库提交异常与Remote Origin报错问题
我来帮你一步步拆解并解决这两个Git问题:
问题1:新仓库提交包含其他项目的文件与提交记录
这大概率是因为你创建Scoreboard仓库时,没有在该文件夹下独立初始化Git,而是复用了上级目录(比如Spring2018)的Git仓库。Git会自动将所有子目录纳入当前仓库的管理范围,所以提交时会连带GameDev/Shooter的内容和记录一起推送。
解决步骤:
- 先确认当前目录的Git归属:进入
Scoreboard文件夹,执行git status。如果输出里包含Spring2018/GameDev下的文件,说明你确实在上级仓库的上下文里操作。 - 剥离上级仓库关联,创建独立仓库:
- 回到
Spring2018根目录,将iOS和GameDev目录从当前仓库的追踪中移除(不会删除本地文件):git rm -r --cached GameDev iOS - 提交这个改动,确保上级仓库不再管理这些子目录:
git commit -m "Remove subdirectories to create independent repositories" git push origin main - 重新进入
Scoreboard文件夹,初始化独立的Git仓库:git init git add . git commit -m "Initial commit for Scoreboard iOS project" - 关联你的Bitbucket远程仓库并推送:
git remote add origin https://your-bitbucket-scoreboard-url.git git push -u origin main
- 回到
问题2:fatal: remote origin already exists报错
这个错误说明当前Git仓库已经关联了一个名为origin的远程地址,通常是之前误操作关联了Shooter项目的仓库地址。
解决方法二选一:
- 直接替换现有远程地址为
Scoreboard的Bitbucket地址:git remote set-url origin https://your-bitbucket-scoreboard-url.git - 先删除旧的远程关联,再重新添加:
git remote remove origin git remote add origin https://your-bitbucket-scoreboard-url.git
操作完成后,执行git remote -v确认远程地址是否正确,再推送代码即可。
内容的提问来源于stack exchange,提问作者FairyKid64
相关产品推荐
相关产品推荐

