文章目录
隐藏
Zhi-Yuan Gao's HomePage
你现在这个弹窗的意思是:
你没有权限直接 push 到原作者的仓库Ruyi-Zha/r2_gaussian
所以 VS Code 才问你要不要:
创建分支 / fork 到你自己的仓库再推送
你既然想推到自己建的 GitHub 仓库,就不要往原仓库推,要把本地仓库的 远程地址改成你自己的仓库。
点:
取消
不要点“创建分支”。
在 VS Code 终端运行:
git remote -v
你现在大概率会看到类似:
origin https://github.com/Ruyi-Zha/r2_gaussian.git (fetch)
origin https://github.com/Ruyi-Zha/r2_gaussian.git (push)
这说明你的 origin 还指向原作者仓库。
假设你自己新建的仓库地址是:
https://github.com/你的用户名/你的仓库名.git
比如:
https://github.com/xxx/r2_gaussian.git
执行:
git remote set-url origin https://github.com/你的用户名/你的仓库名.git
例如:
git remote set-url origin https://github.com/xxx/r2_gaussian.git
再运行:
git remote -v
应该变成:
origin https://github.com/你的用户名/你的仓库名.git (fetch)
origin https://github.com/你的用户名/你的仓库名.git (push)
然后执行:
git push -u origin main
如果之前已经 commit 成功,这一步成功后,你自己 GitHub 仓库里就能看到代码。
这是更推荐的科研工作流:
origin 指向你自己的仓库
upstream 指向原作者仓库
这样你以后还能同步原项目更新。
命令如下。
git remote rename origin upstream
git remote add origin https://github.com/你的用户名/你的仓库名.git
git remote -v
会看到类似:
origin https://github.com/你的用户名/你的仓库名.git (fetch)
origin https://github.com/你的用户名/你的仓库名.git (push)
upstream https://github.com/Ruyi-Zha/r2_gaussian.git (fetch)
upstream https://github.com/Ruyi-Zha/r2_gaussian.git (push)
git push -u origin main
这个方案最好。
因为它那个弹窗是在帮你做“fork/发布到分支”的流程,不是单纯改 remote 地址。
你现在最直接的办法就是用终端改 remote,最稳。
如果你只想简单推到自己的仓库,直接执行这三步:
git remote -v
git remote set-url origin https://github.com/你的用户名/你的仓库名.git
git push -u origin main
把你自己的 GitHub 仓库地址发我,我可以直接帮你把第 2 条命令写完整。
很好,你这个页面说明:你的 GitHub 新仓库是空的,地址是:
https://github.com/Qinhaiyang123/KD-3D-R--Gaussian.git
而你本地项目现在的 origin 还指向原作者仓库,所以 VS Code 才提示没有权限。
我们只需要 把本地仓库的远程地址改成你自己的仓库。
在 VS Code 终端(你现在的 PowerShell)运行:
git remote -v
你应该会看到类似:
origin https://github.com/Ruyi-Zha/r2_gaussian.git (fetch)
origin https://github.com/Ruyi-Zha/r2_gaussian.git (push)
git remote remove origin
git remote add origin https://github.com/Qinhaiyang123/KD-3D-R--Gaussian.git
git push -u origin main
如果成功,你会看到类似:
Enumerating objects...
Counting objects...
Writing objects...
To https://github.com/Qinhaiyang123/KD-3D-R--Gaussian.git
* [new branch] main -> main
刷新你的 GitHub 页面:
https://github.com/Qinhaiyang123/KD-3D-R--Gaussian
你就会看到:
所有代码
commit history
README
scripts
models
utils
全部出现。
建议保留 原作者仓库作为 upstream,以后还能同步更新:
git remote add upstream https://github.com/Ruyi-Zha/r2_gaussian.git
以后如果原仓库更新,你可以:
git pull upstream main
直接在终端执行这三行:
git remote remove origin
git remote add origin https://github.com/Qinhaiyang123/KD-3D-R--Gaussian.git
git push -u origin main
如果 push 成功,你的 GitHub 仓库就会立刻出现代码。
如果你愿意,我可以再教你 一个科研项目非常重要的 Git 技巧:
👉 如何把 submodules(simple-knn / glm)正确上传,否则别人 clone 你的仓库会编译失败。
高志远,24岁,男生 查看高志远的所有文章