aboutsummaryrefslogtreecommitdiff
path: root/doc/developer-notes.md
diff options
context:
space:
mode:
authorGregory Maxwell <greg@xiph.org>2016-11-30 08:45:01 +0000
committerGregory Maxwell <greg@xiph.org>2016-12-02 14:34:20 +0000
commit08ed8c1d071d661f3d92947692d5fcd6fda07706 (patch)
tree73726ace3ad66129a349298710ca2d81bcf2c11b /doc/developer-notes.md
parente56cf67e6b3f2e87bee42aaa5ab709f479c9e6ca (diff)
Developer docs about existing subtrees.
Add some notes about the workflow for changes to code that exists in subtrees.
Diffstat (limited to 'doc/developer-notes.md')
-rw-r--r--doc/developer-notes.md31
1 files changed, 31 insertions, 0 deletions
diff --git a/doc/developer-notes.md b/doc/developer-notes.md
index b0794e6d30..ba03579e86 100644
--- a/doc/developer-notes.md
+++ b/doc/developer-notes.md
@@ -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.
+Subtrees
+----------
+
+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/git-subtree-check.sh to check a subtree directory for consistency with
+its upstream repository.
+
+Current subtrees include:
+
+- src/leveldb
+ - Upstream at https://github.com/google/leveldb ; Maintained by Google, but open important PRs to Core to avoid delay
+
+- src/libsecp256k1
+ - Upstream at https://github.com/bitcoin-core/secp256k1/ ; actively maintaned by Core contributors.
+
+- src/crypto/ctaes
+ - Upstream at https://github.com/bitcoin-core/ctaes ; actively maintained by Core contributors.
+
+- src/univalue
+ - Upstream at https://github.com/jgarzik/univalue ; report important PRs to Core to avoid delay.
+
+
Git and github tips
---------------------