The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,876 other followers

Archive for the ‘DVCS – Distributed Version Control’ Category

Version Control in Visual Studio Code: view Git output window

Posted by jpluimers on 2020/03/31

Since the Git output by default is not shown, here is how to enable it:

[WayBack] Version Control in Visual Studio Code: Git output window

You can always peek under the hood to see the Git commands we are using. This is helpful if something strange is happening or if you are just curious. :)

To open the Git output window, run View > Output and select Git from the dropdown.

Or shorter on MacOS:

  1. Press CmdShiftP
  2. Type show git output
  3. Press enter


Posted in .NET, Development, DVCS - Distributed Version Control, git, Software Development, Source Code Management, Visual Studio and tools, Visual Studio Code | Leave a Comment »

github – What is the current way to remove a git submodule? – Stack Overflow

Posted by jpluimers on 2020/03/12

There is git submodule add, but no git submodule remove. That one is called git submodule deinit, but still a lot of links on the internet do not mention it, so I’m glad there is a good answer to [WayBackgithub – What is the current way to remove a git submodule? – Stack Overflow:

You have the git submodule deinit

git submodule deinit <asubmodule>    
git rm <asubmodule>
# Note: asubmodule (no trailing slash)
# or, if you want to leave it in your working tree
git rm --cached <asubmodule>
rm -rf .git/modules/<asubmodule>


Un-register the given submodules, i.e. remove the whole submodule.$name
section from .git/config together with their work tree.

Further calls to git submodule updategit submodule foreach and git submodule sync will skip any unregistered submodules until they are initialized again, so use this command if you don’t want to have a local checkout of the submodule in your work tree anymore.

If you really want to remove a submodule from the repository and commit that use git rminstead.

If --force is specified, the submodule’s work tree will be removed even if it contains local modifications.


Posted in Development, DVCS - Distributed Version Control, git, Source Code Management | Leave a Comment »

Installing SourceTree 3.x for Windows on an air-gapped machine

Posted by jpluimers on 2020/03/11

Since the “account.json” SourceTree search did not help me much, below are the steps for installing SourceTree for Windows 3.x on an air-gapped machine.



  1. Run Process Explorer on the target system
  2. Run the SourceTreeSetup installer on the target system
  3. When registering, click on the “BitBucket” button on the target system
  4. In Process Explorer, find out the web browser process that the setup kicks off and grab the command-line, which looks like this when running Chrome as default browser:
    "%LocalAppData%\Google\Chrome\Application\chrome.exe" -- ""
  5. Copy the URL bit over and paste it on a machine that has internet access
  6. Logon, and follow the steps until the URL look like this: http://localhost:34106/?state=authenticated&code=876543210987654321
  7. Copy that URL over to a web-browser on the target system and execute it
  8. Finish the installation steps on the target system

Now a new file should be in %LocalAppData%\Atlassian\SourceTree\accounts.json suitable for SourceTree 3.x. In the future you might be lucky enough to copy that to a target system before installing.

I was not so lucky, because my accounts.json was SourceTree 2.x based, which the SourceTree 3.x setup modifies, but is still not happy with.

Note these number differ on each request:

  • 123456789012345678 is a base64 encoded request ID
  • 876543210987654321 is a base64 encoded response ID
  • 34106 is a random TCP port where the installer is listening on to get the authentication information


Initially, I had Fiddler steps in the above, but found out I did not need those. One thing that complicated this is that Fiddler had been removed from Chocolatey for a while, so I was not sure it would stay as a product:


Now has an MSI installer:

Has old steps for 2.x versions to get around the above hoopla:


Posted in Development, DVCS - Distributed Version Control, Software Development, Source Code Management, SourceTree | Leave a Comment »

Sunsetting Mercurial support in Bitbucket – Bitbucket

Posted by jpluimers on 2020/01/30

February 1st, the start commences of Sunsetting Mercurial support in Bitbucket – Bitbucket [WayBack]. Starting June 1st, only git is supported by Bitbucket, despite them having started with and focused mainly Mercurial at first.

Here are the major dates of the sunset:

  • February 1, 2020: users will no longer be able to create new Mercurial repositories
  • June 1, 2020: users will not be able to use Mercurial features in Bitbucket or via its API and all Mercurial repositories will be removed.

All current Mercurial functionality in Bitbucket will be available through May 31, 2020.

So by now you should have started migrating from Mercurial to git, probably away from BitBucket.

Reading their community, it looks like an in-place conversion (keeping all issues, comments, wikis, pull-requests, etc) and just replacing the mercurial repository with the converted git repository is impossible.

Given that the user experience on Bitbucket for git repositories is far behind sites like GitHub or GitLab, migrating away after conversion sounds like a very good move.

Conversion used to be hard Moving my BitBucket mercurial repository to git was a lot harder than I hoped for (but moving to GitHub was easy) « The Wiert Corner – irregular stream of stuff

So by now, I am anxious to see if the steps linked from the quote are easier:

We recommend that teams migrate their existing Mercurial repos to Git. There are various Git conversion tools in the market, including [WayBack] hg-fast-export and [WayBack] hg-git mercurial plugin. We are happy to support your migration, and you can find a discussion about available options in [WayBack] our dedicated Community thread.


Posted in BitBucket, Development, DVCS - Distributed Version Control, git, Mercurial/Hg, Software Development, Source Code Management | Leave a Comment »

Some things I learned from “Git tips and tricks | GitLab”

Posted by jpluimers on 2020/01/21

Via [WayBackGit tips and tricks | GitLab “Handy Git commands for everyday use” I learned these:



Via: [WayBack] GitLab on Twitter: Ready to get #backtowork? Brush up on a few tips and tricks we use at GitLab everyday:

Read the rest of this entry »

Posted in Development, DVCS - Distributed Version Control, git, Software Development, Source Code Management | Leave a Comment »

%d bloggers like this: