Open janaakhterov opened 3 years ago
I'm not a fan of the current Git flow branch setup, but I also don't like a per environment branch setup. I find that any time you have multiple copies of data they will inevitably get out of sync. I think since services only has one release per month and we're never working on releases concurrently, just a simple main branch and proper semver tagging should suffice. If a hotfix is needed, a release/0.x
branch could be spun off the production tag.
I find that any time you have multiple copies of data they will inevitably get out of sync.
This is true.
I think the large benefit of a branch per network (at least for me) is a clear separation of what is currently supported on a per network basis. This means the branches which e.g. don't support live hashes could remove the live hash protobufs. Previewnet on the other hand would keep the live hash protobuf since its support is a WIP.
I was thinking this might be a decent idea to have a branch per network.
mainnet
branch for the protobufs currently supported bymainnet
testnet
branch for the protobufs currently supported bytestnet
previewnet
branch for protobufs currently supported bypreviewnet
This might make it more clear what is supported and how to interact with a certain network because as of right now
develop
contains protobufs supported bytestnet
, and https://github.com/hashgraph/hedera-protobufs/pull/15 seems to contain what is going to be supported onpreviewnet
. Later, when we do a repo per language for the protobufs it might be nice to support each network protobuf's with their own releases such as:1.0.10-mainnet
,1.0.10-previewnet
,1.0.10-previewnet
. Also, having these different releases will make it easier to determine breaking changes in the SDK's.Not sure if this is a good idea, but perhaps we shouldn't have a
main
branch at all, and instead rename it tomainnet
so no one would need to switch branches once they've cloned the repo.