Pushing code from one branch of a repo to another branch of another repo

微笑、不失礼 提交于 2020-07-17 06:30:10

问题


There is a repo say ABC/A. I had forked this repo to my own github say ME/A. I was asked to create a branch on ME/A say x (originally there were develop and master). I had to write some code, so I cloned ABC/A and worked on its develop branch. But now when I have to push the code, I cannot push it to ABC/A as i dont have rights to do so. I have to push the code to ME/A. The problem is, I worked on develop branch for ABC/A but I have to push the code to ME/A x branch. Is it possible to push code in such a way?


回答1:


Yes, you can push any local branch to any remote branch. The syntax is

git push <remote name, e.g. origin> <local branch name>:<remote branch name>

If your current branch (the one you want to push) is called develop, the command would be

git push ME develop:x



回答2:


The answer by Roman is correct. However, there is an additional step that might not be obvious for some. You will need to first add the remote name and URL of the new repo(Repo you are trying to push to), before pushing to a branch in that repo. This can be done like so;

git remote add <remote name> <remote url>
//For example
git remote add origin2 https://user@github.com/example/new_repo.git

Then you can proceed like in Roman's answer, by pushing to that new repo branch like so

git push origin2 local_branch:new_repo_branch



回答3:


Assume that the name of the remote you are using for ME is called me (git remote -v show will list them).

Then with your branch checked out, do

git push -u me A

where A is the name of the branch. The -u will set your local branch to track the upstream branch on me, so git pull will pull from the right place, and future git pushes will work without additional commands.



来源:https://stackoverflow.com/questions/35939308/pushing-code-from-one-branch-of-a-repo-to-another-branch-of-another-repo

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!