Base solution for your next web application
Open Closed

Upgrade to latest version #6285


User avatar
1
Jayesh created

How do I upgrade aspnetzero to the latest version? I see so many threads mentioning that I have to download full version and create & merge branches. This is an awful lot of work to do an upgrade and I hope there is a simpler way.

-Jayesh


8 Answer(s)
  • User Avatar
    0
    strix20 created

    There is no other way.

    Moreover, as a product owner you need direct control over which changes are actually applied to your product during an upgrade.

    We, for instance, have many customizations that we do not want overridden by framework updates. (For instance, we completely replaced the UI with angular material. We don't want that work undone every time ASP Zero upgrades Metronic or adds support for a new template (which we also have removed.))

    If your project is set up correctly, the merge process is actually quite painless. Our base branch is framework, which only ever has framework changes, and this is the root from which all our other branches originated. That way, when we upgrade, we simply download the new version, replace the framework branch and commit those changes.

    Then we can merge framework into our development branch and resolve conflicts, giving us just the latest framework changes since the last version.

    Usually it takes us less than an hour to do an upgrade, and we have a tremendous amount of customizations to Zero itself that make up most of that time. Most people I expect will have little to no conflicts, and the process should only take minutes.

  • User Avatar
    0
    ryancyq created
    Support Team

    as @strix20 mentioned, it should be easy if you maintain a framework branch in your project repository.

    See relevant discussions at https://forum.aspnetboilerplate.com/viewtopic.php?f=5&t=2486#p5511

    https://forum.aspnetboilerplate.com/viewtopic.php?f=5&t=9955

  • User Avatar
    0
    murphymj5209 created

    i am also unclear on this approach and would ask for a better explanation then the 2 year old forums suggested above.

  • User Avatar
    1
    strix20 created

    I'm not sure how much more thorough anyone can be. Two years doesn't change the necessary setup, it's really just proper gitflow for building on closed source projects.

    In case you missed it, here is the relevant description, which is quite thorough. It is also the basis for the process that we use.

    https://github.com/aspnetzero/aspnet-zero/issues/96#issuecomment-268093697

    I would add that we actually did not start off with this proccess, but that's ok. If you didn't start with a framework branch, and you use git, you can always check out your first ever commit, create a new framework branch from it, do the upgrade to it, and then merge that upgrade back into develop. This is what we ended up doing. From then on, we maintained the framework branch, and have had no issues.

  • User Avatar
    0
    alexanderpilhar created

    If you don't want to go with the branch-based approach, you could also go with comparing project content using tools like Code Compare (easy to use) or WinMerge (works the same way, but needs configuration). It might be a more time-consuming process, though (depending on your own changes to existing ASPNETZERO code). Also, make sure to have a backup of some sort (if you don't use version-control at all).

  • User Avatar
    1
    commondesk created

    I understand that major release might require us to merge since 100's of files change.

    Why cant ASPNETZERO provide delta's for minor point releases?

  • User Avatar
    0
    tusksoft created

    Dead link on the github discussion.

  • User Avatar
    0
    strix20 created

    @Tusksoft

    The link isn't dead, you just need to have access to the ASP Zero github repositoy, because it's private.

    You can grant access to your github account by logging into the ASP Zero main website, clicking the account dropdown, and then going to github members and adding your github account there (assuming you have an active ASP Zero subscription.)