-
Notifications
You must be signed in to change notification settings - Fork 703
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
Change branch/versioning system #2815
Comments
For 4 how about creating a |
Nope, I think your instincts are right. We'll do the following: Branches
Version Info
We will use the E.g. for <PropertyGroup>
<VersionPrefix>1.15.10</VersionPrefix>
<VersionSuffix>pre.$([System.DateTime]::UtcNow.ToString("yyyyMMdd.HHmm"))</VersionSuffix>
</PropertyGroup> I'm still not sure how to update the build automatically. In other projects I used T4 templates. But I'd like to avoid that here. |
Isn't possible and enough only the commit id to track? |
Ok....
I'm backing away from using |
I've renamed the branches. Not sure this is going to work, but I gotta keep trying...
Sorry for any trouble this causes as I do this. |
I don't think my plan as stated will work. gitversion is just not flexible enough. I will need to revert back to having My next step is to try to use |
Ok, I've "fixed"
Now, I'm going to do a new release of v1 from I still don't know how to make this work for v2's branches. But I haz ideas. |
now... on 'main Will result in a And, if I'm right (fingers crossed), adding a tag ( I'll test this asap once the rest of the awaiting v1 PRs are merged. |
@tig I can't build the develop branch. Gives error because of the nuget packages.
|
Hmmmm.. ![]() Did you try a |
You may need to clear your nuget cache? dotnet nuget locals all -list
dotnet nuget locals all --clear Kill all instances of |
I'm not sure because once I needed to add others source mapping but I've gotten issues with others projects and I removed all and only keep the |
Whatever you want to happen, I'll make happen in #3558, since this is central to the goal of that issue. Auto versioning? Sure. Including git commit in the package and/or library metadata? Sure. More flexibility of when and how release builds are performed and how they are/can be deployed? Yup. All in the goal of that. So any wish list items around builds, go ahead and drop em in #3558. 😊 |
I've already solved that in my working branch. The problem is indeed the source mapping but only because it clears all and uses an unbounded wildcard. The appropriate fix is to not clear, and to just specifically add mappings to packages we are dependent on. That configuration can actually be auto-generated by a tool I picked up a while back. Honestly, Visual Studio should really do that by default to the local nuget config, whenever packages are changed. But it doesn't. Because reasons, I guess. In any case, it's easy enough to do and I've already got it in there. Do whatever you gotta do to make it work for you in the interim of course, and a fixed config will just come in that PR. The easiest thing for you to do would honestly be to delete and git ignore the nuget.config file in your working tree and you're all set. Don't commit the delete. And the git ignore for the file belongs in your user, global, or system git config - not the repository config. Otherwise you'll affect CI woth it. |
Default config on a new install of nuget as part of visual studio, PowerShell, or .net SDK is wildcard, as well. Main difference between ours and built-in is the name of the source, which is ALMOST the same, but not quite. It's still considered best practice to have a nuget.config in the solution root, though, so my intent in #3558 around that is have it act with a lighter touch and just add, not replace people's config. Right now it unconditionally wipes and replaces theirs for any msbuild process that runs at or below the level of thst config file unless explicitly told to ignore it. Partially a dependency-imposed smell that's no longer relevant, but honestly mostly just bad design of nuget itsrlf, IMO. It literally walks the directory tree all the way to root of the file system hierarchy it is in and takes the first nuget.config it finds no matter if your solution is 30 directories away from root. Found that out a long time ago when troubleshooting nuget problems in another project and I moved the nuget to the parent directory above where the solution was, as a quick and easy way to hide it from nuget on restore. NOPE! It found it because of that behavior, ehich is documented as how it works. Anyway, yeah... I've got a permafix for it coming in #3558. Wrote it weeks ago, actually. 😅 |
Right now we use Git Flow.
main
always represents the most recent release ofv1
develop
is thev1
working branchv2_develop
is thev2
working branchmain
forv2
4 and 5 are problematic for maintaining multiple versions of T.Gui over time (v1 and v2 etc...).
6 makes it hard to determine what version of T.Gui is in use when doing local dev.
Here's my thoughts on addressing this. I've spent a bunch of time digging into this, but am still quite confused anď unclear on the right approach. This Issue is my attempt to write it all down to drive more clear thinking. Help appreciated.
The text was updated successfully, but these errors were encountered: