Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Branching strategy in use #8

Open
Liwoj opened this issue Feb 19, 2025 · 1 comment
Open

Branching strategy in use #8

Liwoj opened this issue Feb 19, 2025 · 1 comment

Comments

@Liwoj
Copy link

Liwoj commented Feb 19, 2025

Hi

Sorry for contacting you this way.

I'm maintaining the fork of this project for internal use. Most of the time I'm just using your code.

But sometimes I have a hard time following your development. Syncing upstream (yours) branch is not straightforward as the master often does not move only forward (to sync you need to also remove existing commits). The absence of any merge commits also perplexes me.

Maybe understanding the branching strategy would help me follow the development easier. Is there any documentation/description on the web of the branching strategy you are using here?

Thanks

@mahara
Copy link
Owner

mahara commented Feb 21, 2025

Hello,

When I was started to add .NET 9.0 support few months ago, I realized the code base was really a mess and it's really hard for me to understand what and/or why I was doing that at that time. So I decided to rewrite the whole 5.x and master branches to make future development much more easier to do.

Current 5.x and master branches reflect the whole efforts. As you can see in mahara/Castle.Transactions@bfd3ab7 and 2a90f1d, it becomes much more easier to deal with adding and removing .NET target frameworks.
Previous old branches are still preserved and were archived in their respective *-ARCHIVE-* branches.

Please do consider that all these (Transactions and NHibernateIntegration) forks are still experimental. So at least for now, until I'm satisfied enough, they don't really follow common best practices in branching strategy.
The good news is all current 5.5 and master branches are pretty much stable now, unless I really have to introduce major breaking changes in commits history, for example if I really really really have to revert mahara/Castle.Transactions@62a8b91 in 5.3.x branch, which I hope I don't have to.

To make development easier on your part, you can now use 5.5 branch latest commit as a starting point.
And if there was commit rewrites (force-push), just hard reset the commit to that latest commit and cherry pick your commits from your development branch. It should work just fine, probably with some minor adjustments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants