Git Branches - multipath-tcp/mptcp_net-next GitHub Wiki
Different branches on mptcp_net-next repo
net-next→ sync of Netdev's net-nextnet→ sync of Netdev's nett/upstream→ top of the TopGit tree containing our changes on top ofnet-nextt/upstream-net→ top of the TopGit tree containing our changes on top ofnett/*→ other topic: correspond to one commit we want to send upstream, managed by TopGitexport→ an export of the tree on top ofnet-next, rebased every day: what we should send upstream at some points (without theDO-NOT-MERGEones)export-net→ an export of the partial tree on top ofnet(not including the net-next patches), rebased every day: what we should send upstream at some points (without theDO-NOT-MERGEones)for-review→ same ast/upstreambut without TopGit files: can be used as a base and target for your reviews, easier to rebasefor-review-net→ same ast/upstream-netbut without TopGit files: can be used as a base and target for your reviews, easier to rebase
[!IMPORTANT] TopGit is used to ease the maintenance and track all modifications, e.g. if we need to modify an existing commit from the
exportbranch before sending it to netdev. You don't need to use TopGit to send patches.
Which branch to use?
Short answer: export.
Simply base your dev branch on top of the export branches (or the for-review one). Prefer the non -net branches: it is easier to review on top of them, to resolve conflicts once applied, and the CI will try to apply your patches on top of the export branch.
If you work on top of the export/export-net branches (instead of the for-review/for-review-net ones), use git rebase --onto (or git reset + cherry-pick) to sync with the latest version, e.g. if you are using b4:
git fetch origin # adapt here and below if needed
git rebase --onto origin/export "$(b4 prep --show-info base-commit)"
Do not use git blame on top of for-review (-net), as references might point to our TopGit development tree, and not what has been upstreamed.
For MPTCP Maintainers only
For your information, the TopGit tree is looking like this:
* t/upstream
* (...)
* MPTCP commits for net-next
* (...)
*
|\ --- (...) MPTCP commits only for -net (...) ---- t/upstream-net
| \ /
| * (...)
| * MPTCP commits for -net (and net-next)
| * (...)
* | top of 'net-next' branch
|\ |
| \|
| * top of 'net' branch
| | (...)
To manipulate it, please look at this README