I’m a git green belt and having a hard time wrapping my head around a concept, and have been surprising unable info on this topic.
We’ve got a repo (we are using beanstalk) that has a master and a few branches by different developers. When you merge or rebase a branch, do you do that locally and push that merge, or do you accomplish this on repo server? When you merge a branch locally and push this to the repo, does git understand this and the merge is reflected there as well?
You merge locally and push the result to the server. The merge is just like a normal commit in the repository.
Git will actually warn you if the target server have a newer version and merging is needed.