##// END OF EJS Templates
permissions: handle more cases for invalidating permission caches...
permissions: handle more cases for invalidating permission caches - invalidate user permissions on chaning the global permissions - invalidate all users in case of creating new object with "copy permissions" flag - invalidate all users permissions in case of repo/repo group renames - invalidate all user permissions in forked repo with copy flag

File last commit:

r1:854a839a default
r3411:2e06ebce stable
Show More
fixing-common-commits.rst
31 lines | 1.2 KiB | text/x-rst | RstLexer
/ docs / collaboration / fixing-common-commits.rst

Merging Forks with an Empty Repository

When a new repository is created, it has no commits. If the empty repository is forked, neither |repo| will have any shared information to link them together, making it impossible to create a |pr| to merge them.

To avoid this problem, create an initial commit on the new repository before forking it. It can be accomplished, for example, by adding a README file to the master repository and commiting it to the server before forking.

In case the fork was already made and you are unable to push or merge due to the lack of a common commit between both repositories, the following steps would enable you to fix this problem.

  1. Create a commit on the master repository.

  2. Pull the changes from the fork to the master repository, and rebase them on top of the new commit.

    #pull from the fork into master
    $ hg pull -r fork-commit-id
    
  3. If the changes were made locally, push the changes to the server.

  4. On the forked repository, pull the changes from master.

Now you should be able to create a |pr| or merge between both repositories.