The personal blog of Sudhanshu Mishra


Hi! I'm a .NET and open source enthusiast and an all round nice guy.

Fix branch hierarchies in git

You use git, good on ya! You branched off of a branch that should've been left alone. How do you change the "parent" of the new branch?!

In git, you branched off of a branch that has a failed build. You fixed the build in the child branch, but your CI server (e.g. Atlassian Bamboo) sees the failed build on the parent branch as a blocker for you to be able to merge back to develop.


Targeting .NET 4.7 from Visual Studio 2017

Developer tools have a way of stumping you in the most unexpected of ways. This post analyses and then illustrates how to get VS 2017 list .NET 4.7 as a target framework for your projects, minus the pain.

So, one fine Tuesday morning I wanted to take .NET 4.7 for a spin and like anyone launched my favourite editor Visual Studio 2017, Professional (disclaimer: favourite for the purpose) and (no surprises here) went File -> New Project. Much to my chagrin, .NET 4.7 wasn't listed as a target framework. Visual Studio I did the next obvious thing i.e. clicked the "More Frameworks" link and landed on a nice looking "Targeting .NET Platforms" page. If you thought that was it, apologies because herein starts our mini-adventure - triggered in parts due to a curious yours truly. (As an aside, the mentioned page looks very much like the new ASP.NET default template!)


Taming bash on Ubuntu on Windows 10 Creators Update!

For the uninitiated, you can now run a real bash prompt on Windows 10 Anniversary Update or higher. Let's try to make sense of what's going on with that!

For the uninitiated, starting Windows 10 Anniversary update Windows 10 offered a Linux bash shell for everyone who would take it. It's an optional feature that requires Developer mode to be turned on. Then, once the required packages are setup by windows, you open "Turn Windows features on or off" dialogue (if you type Turn windows, that's the first option that shows up), look for "Windows Subsystem for Linux" and check the box. This installs the feature and then you're asked to reboot. Once the computer comes back up, you open a command prompt and type bash. This action calls ##lxrun.exe## which has been placed in your C:\Windows\System32 folder by installing the Windows subsystem for Linux feature. This FAQ lists the most important concepts behind WSL. In a gist, here's the most important things to note: