I have a local branch "gh" that I always want to push to my account on github; I also have another local branch "lab" that I always want to push to my organization's account on github.
I have setup two remotes (gh and lab) for that.
$ git remote -v
gh [email protected]:Ninguem/prj.git (fetch)
gh [email protected]:Ninguem/prj.git (push)
lab [email protected]:lab-rasparta-org/prj.git (fetch)
lab [email protected]:lab-rasparta-org/prj.git (push)
I'm afraid to inadvertently mess the two when pushing. Is there a way to prevent that?
Note:
I've already fetched the two successfully, so I thing they're somehow "linked" together correctly... how do I manage what branches are "linked" to what remote branches and is there a safety mechanism?
I noticed you might be confusing the terms branch and remote:
A remote Remote repositories are versions of your project that are hosted on the Internet or network somewhere.
A branch let's you create an isolated environment for making changes in a repository.
I believe you're trying to avoid confusion between pushing to the wron remote.
So suppose you have a branch my_branch
in your personal GitHub account.
The safer way to ensure the remote you're working with is to explicitly say what remote are you pushing to:
If you want to push to your personal repository:
git push gh my_branch
If you want to push to your organization's repository:
git push lab working_branch
It will be his pattern:
git push <remote> <remote_branch>
You could also set up a local branch to track the remote branch on your remote gh
like this:
git checkout -b my_branch -t gh/my_branch
Hope this helps.
If you really want to avoid messing things out, then you could consider working with two local repos, each cloning a specific branch:
That way, you are sure you are not in the wrong branch, or pushing to the wrong remote.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With