我正在创建一个我没有权利的项目的新版本。不幸的是,当我想推动我的更改时,我开始进行更改(超过20个本地提交)并意识到我的错误。
例如,我正在使用未经删除的本地提交在分支ProjectA
上使用local
,我可以将整个local
分支转移到新的{ {1}}为ProjectB
?
我知道我可以联系原始项目的开发人员,为我提供解决问题的临时权利。但是我很好奇是否有现成的方法只使用Git命令。
我已经找到了:
答案 0 :(得分:3)
只需更改推送目标。
git remote set-url origin https://github.com/username/ProjectB.git
答案 1 :(得分:1)
创建一个新的空存储库(例如,projectB
)。然后将projectb
的新远程(例如,projectB
)添加到projectA
。
$ git remote add projectb <projectB-url> # add a new remote called 'projectb' with the url of project 'projectB'
现在将您的projectA
回购local
分支提交/更改推送到projectbB
repo的master
分支。
$ git checkout local # make sure you are in 'local' branch
$ git push projectb master
答案 2 :(得分:1)
似乎你仍然想为起源github repo做出贡献。 所以你可以分叉这个仓库,然后通过以下方式将你的本地更改推送到fork repo :
git remote add fork <URL for the fork repo> -f
git checkout local
git push fork master
现在,fork repo的master
分支包含您的本地更改。您可以创建拉取请求以将更改合并到原始github仓库。