我正在用Python做CS50的人工智能简介。我应该执行一些任务,然后将它们推送到 me50/{my github username} 存储库上的特定分支上。 当前任务被告知要像这样推送:
使用 Git,将您的工作推送到 https://github.com/me50/USERNAME.git,其中 USERNAME 是您的 GitHub 用户名,位于名为 ai50/projects/2023/x/knights 的分支上。
我是通过命令行执行此操作的,但它一直给我错误:
src refspec main 与任何内容都不匹配 错误:无法将一些引用推送到 'github.com:me50/r-mehryab.git'
所以我尝试通过网站中的 github 界面创建一个新分支(在我的例子中,分支是:ai50/projects/2023/x/knights)。我犯了一个错误,我没有将源更改为“main”,而是让它成为我使用的最后一个分支,即:web50/projects/2020/x/wiki。
现在分支 ai50/projects/2023/x/knights 似乎包含来自 web50/projects/2020/x/wiki 分支的文件,并且它已成为默认分支。我无法删除它或将其更改为默认值,因为我不是存储库所有者。我不知道我该怎么办?
p.s:也许我应该提到,除了 ai50/projects/2023/x/knights 之外,所有其他分支现在都是过时的分支,包括“主”分支。
您应该能够拉取、删除文件、提交并再次推送。从理论上讲,他们可以在历史中看到你错误地推送了某些东西,但这没关系,没有人会查看数千名非付费学生的 git 历史记录,即使他们这样做了,这也会发生在每个人身上,你注意到并纠正了你的错误。
所以解决方案应该是:
git stash push
git checkout ai50/projects/2023/x/knights
git pull
git rm <your web50 files>
git add <all the and only the files you want to push>
git commit
git push