SourceTree

New installer / updater for SourceTree for Windows

By on May 13, 2013

We’ve just changed our installer and auto-update system for SourceTree for Windows – up until now we’ve been using ClickOnce, which although quick and simple has caused problems for some people, such as those behind corporate proxy servers. As our user base has grown larger it’s becoming an increasing issue for people that needed to be resolved, hence the new installer.

windows-download-button

If you download SourceTree for Windows now you will automatically get the new installer, which features many improvements over the previous setup:

  1. It’s one file This is just simpler, particularly if you want to download once and install many times across a corporate network.
  2. You can install it when offline. One caveat: if you don’t have .Net 4.5 installed already (only applies to Windows 7) and you’re offline, the installer can’t retrieve it for you, so you’ll need to also download the Standalone .Net 4.5 Installer.
  3. The installer and auto-update system work behind all proxy servers
  4. You can pick the install location, unlike ClickOnce which gave you no choice.
  5. More robust. ClickOnce could sometimes tie itself in knots if something went wrong during the install or update, this system should avoid that.

If you already installed with the ClickOnce installer, you don’t have to grab the new installer yet (there will be one more ClickOnce bugfix update today), but we recommend doing so as soon as it’s convenient for you – you’ll be reminded at startup once the new installer updates become the only path. Installing the new version will happen alongside the ClickOnce install, and will retain all your bookmarks, per-repository settings, and any settings stored with Git itself, however your other settings in Tools > Options will be reset to the default. Once you are up and running with the new version you can simply uninstall the ClickOnce install, which will look something like the below in your Control Panel > Uninstall window:

uninstall_001

Just uninstall the highlighted entry (the one with the ‘globe’ icon, rather than the SourceTree icon).

Switching over to a brand new installer / updater is not something we do lightly, however based on the feedback we’ve had from the community we think this is the best option for everyone for the future. We hope you continue to enjoy using SourceTree for Windows!

 

  • http://www.famularo.org/ Jason Famularo

    Which installer did you change to?

    • Anonymous

      It’s an MSI built with Advanced Installer.

  • Visual Jazz

    We distribute .NET 4.5 via SCCM asynchronous to startup / login (ie. in the background of the user session), so giving a computer this and .NET 4.5 together will inherently fail, as the installer hangs and has a cry when it doesn’t have its prereqs.

    Extracting the installer, I was able to merge the cab into the msi inside, creating an installer which will install without .NET 4.5 present. When you try to run it it will still prompt for .NET, but in most cases it will have already been installed by SCCM.

    Not sure why you didn’t just provide the MSI in the first place? Was it only for the .NET check?

    Additionally, i’m trying to find a way now to easily script the git location and username. These seem to be stored in the user profile under folders named with random strings – not very scriptable. Can you advise the best way to go about this so the user isn’t prompted at first run?

    Thanks

    • Anonymous

      Yes, we needed the wrapper exe for the bootstrap procedure to make sure people are prompted to install .Net 4.5 if they don’t have it. The assumption is that sysadmins who want to bypass this can extract the MSI if they need to anyway (you guys know what you’re doing :)) and the default for everyone else should be the simplest, one-stop process. I’ve had some feedback from a sysadmin who deployed it across 100+ machines that way after extracting. He didn’t mention it still prompting for .Net 4.5 but maybe he’d automatically deployed that already too – you’d need to to run the app.

      About scripting the rest: SourceTree will detect a system-installed git from git-scm.com, so long as it’s either on the path (‘where git’) or in the default location (Program Files (x86)Git). Then you won’t get prompted to download an embedded git version.

      The git user name & email can be scripted – just populate %USERPROFILE%.gitconfig with user settings, SourceTree will pick those up.

      • Kevin

        How do I specify that I want to use an embedded version of GIT with sourcetree and not a previous Git install on my PC? I need to use Git client to connect to Github but SourceTree client to connect to BitBucket since I do work for multiple companies.

        Also, Sourcetree will not run on my Windows 7 Ultimate PC after install with the new installer, it just crashes and Microsoft troubleshooting window pops up.

        • Anonymous

          “How do I specify that I want to use an embedded version of GIT with sourcetree and not a previous Git install on my PC?”

          Tools > Options > Git, click the ‘Use Embedded Git’ button and accept the download.

          “Also, Sourcetree will not run on my Windows 7 Ultimate PC after install with the new installer, it just crashes and Microsoft troubleshooting window pops up.”

          Please make sure you have uninstalled the old installer’s version of SourceTree from Control Panel > Uninstall – the most common case of this is that you’re accidentally running the old version with Mercurial repositories or other features unsupported by the old version.

  • Visual Jazz

    Additionally as background – after extracting the installer to get the .msi and the .cab, I did as we would usually do and attempted to script it to run from a unc path with the cab in the same directory but to no avail. Only merging the cab into the msi worked.

  • Ediaz

    Previous installer didn’t need administrator rights for install, this one needed, can you change this?

  • Jordan Miner

    I’m glad you switched to a new installer. I think it is an improvement.

    The only problem I see is that it still makes folders in the Start Menu (AtlassianSourceTree). Modern programs should create one top-level shortcut. You don’t need “Check for Update” in the Start Menu. Just have updates accessible from inside the program.

    • Anonymous

      This is the default way Advanced Installer deals with updates, and actually I like it better this way because it mitigates the (albeit rare, but serious) case where a problem at startup means people can’t update because they can’t start the app. This way even if you can’t start the app you can get fixes very easily.

  • Jeff

    When I click “Check For Updates”, I now get an error, “Access is denied.” unless I am running SourceTree as an administrator. It shouldn’t need admin to check for updates, right? And if it did, requesting elevation would nicer than just getting an error. Could you please fix this?

    • Anonymous

      Hmm, I’ll raise this with the Advanced Installer guys, I thought it would escalate in the same way the installer does. Ultimately it’s related to https://jira.atlassian.com/browse/SRCTREEWIN-599 though – allowing a user to install it just for themself as a non-admin.

  • ms

    Win7 download link is down…
    http://bit.ly/167iKA2

  • ms

    huhh…disappointed! Download link for Win is still broken.

  • Aron Tsang

    Dislike the “new” installer (ie traditional installer). Fact is, in a well configured corporate network (ie they have http proxies), ClickOnce should perform no worse than exe/msi installer.

    At present I am TRYING to install the new version SourceTree and its failing (as it does not go through the upgrade, but rather displays the modify/remove/repair options instead).

    However at the end of the day, the installer makes up a very small part of the experience, and it should be possible to have multiple packages…

    • Anonymous

      You should only get the modify / remove / repair window if you’ve already installed the new version. Once you have the new version, the ‘Check for Updates’ feature (either in SourceTree or launched directly from the Start menu) will perform upgrades.

      “Fact is, in a well configured corporate network (ie they have http proxies), ClickOnce should perform no worse than exe/msi installer.” – this is a nice theory, and we thought so with our first 1,000 users too – but in practice there’s a sizable minority for whom ClickOnce is incredibly unreliable. Switching away from ClickOnce has reduced install support cases by about 99%.

  • W Meyer

    Just downloaded and tried to install. The installer hangs. Minutes pass. No activity. FWIW, I have seen the same misbehavior from the TortoiseGit 1.8.4 installer. They claim it’s an installer issue. I have no idea. Why is the installation such an adventure?

    • Anonymous

      If it’s happening in more than one installer then it’s possible that your Microsoft Installer database has a problem – SourceTree’s installer is underneath it just an MSI package so the actual installer is Windows own, and I’m guessing TortoiseGit is the same.

      I’ve seen a few reports of this issue around the Internet and it’s been suggested that this tool from Microsoft might fix it: http://support.microsoft.com/mats/Program_Install_and_Uninstall

      • W Meyer

        Thanks, I had not found that tool. Unfortunately, it only suggests uninstalling TortoiseGit 1.8.3.0, and does not list SourceTree at all, as it has not been installed. If I try the “Not listed” selection, it just tells me no fixes have been applied. I am now trying to uninstall TortoiseGit, as it suggested, but interestingly, I now seem to be seeing the other side of the problem: it’s stuck on “preparing to remove…”

  • David Peck

    Waaa! There are too many updates pushed. Can you not lump some of the minor updates together a little more?

    • Anonymous

      Some people think there are too many updates, some think we should push changes faster. We pitch it somewhere in the middle.