Browse Source

Developer docs about existing subtrees.

Add some notes about the workflow for changes to code that exists in subtrees.
Gregory Maxwell 6 years ago
  1. 31


@ -408,6 +408,37 @@ GUI @@ -408,6 +408,37 @@ GUI
should not interact with the user. That's where View classes come in. The converse also
holds: try to not directly access core data structures from Views.
Several parts of the repository are subtrees of software maintained elsewhere.
Some of these are maintained by active developers of Bitcoin Core, in which case changes should probably go
directly upstream without being PRed directly against the project. They will be merged back in the next
subtree merge.
Others are external projects without a tight relationship with our project. Changes to these should also
be sent upstream but bugfixes may also be prudent to PR against Bitcoin Core so that they can be integrated
quickly. Cosmetic changes should be purely taken upstream.
There is a tool in contrib/devtools/ to check a subtree directory for consistency with
its upstream repository.
Current subtrees include:
- src/leveldb
- Upstream at ; Maintained by Google, but open important PRs to Core to avoid delay
- src/libsecp256k1
- Upstream at ; actively maintaned by Core contributors.
- src/crypto/ctaes
- Upstream at ; actively maintained by Core contributors.
- src/univalue
- Upstream at ; report important PRs to Core to avoid delay.
Git and github tips