28

So I do a lot of work on a school computer. We can't install anything but we have most of our tools on our flash drives but I was wondering if there's a way to get Command Prompt to use Mercurial off of my Flash Drive. Let's say in theory that Mercurial's files were on my flash drive, where would I go from there?

Kara
  • 6,115
  • 16
  • 50
  • 57
NessDan
  • 1,137
  • 1
  • 16
  • 34

3 Answers3

26

To make Bryan's solution "truly" portable in Windows 2000/XP/Vista/7, assuming the BAT file is inside Mercurial's directory, use:

set PATH=%PATH%;%~dp0%

So, no more hardcoded paths.

user245794
  • 261
  • 2
  • 2
  • Ya, we noticed the previous code was kind of un-portable but we fixed it. The code here looks different from ours though, what exactly does %~dp0% do/stand for? – NessDan Jan 08 '10 at 21:08
  • 2
    The above's pretty good, actually. That crazy %~dp0% basically evaluates to the path of the currently running bat file – rossipedia May 17 '10 at 23:15
25

Say your flash drive was drive G: and your Mercurial executables are in G:\mercurial

Open a command prompt and enter:

set PATH=%PATH%;G:\mercurial

Proceed to use hg as normal

This should work, in theory. If you're on a *nix computer, you would do something like this (given /media/FLASHDRIVE is the path to your flash drive):

export PATH=$PATH:/media/FLASHDRIVE/mercurial

Hope that helps!

EDIT

In response to the comment below:

@ECHO OFF
REM Mercurial enabler :)
set PATH=%PATH%;G:\mercurial
cmd.exe

Should do it :)

rossipedia
  • 56,800
  • 10
  • 90
  • 93
  • That worked! Thanks but got another question! Is there any way to incorporate that into a .bat file so I'd just open that and have it open command prompt and run that at the same time? – NessDan Dec 15 '09 at 00:45
  • You sir, are an instant winrar. Thank you and I greatly appreciate it! – NessDan Dec 15 '09 at 01:18
23

download the tortoise hg .msi setup

msiexec /a tortoisehg-1.1.4-hg-1.6.4-x64.msi /qb TARGETDIR=f:\hg-temp

it will extract the tortise hg files to f:\hg-temp path,

goto f:\hg-temp\PFiles\TortoiseHg and copy it to F:\hg

Delete f:\hg-temp\PFiles\TortoiseHg

Then add f:\hg to your path

set PATH=%PATH%;f:\hg

(f:\ is your flash drive)

prabir
  • 7,674
  • 4
  • 31
  • 43
  • 3
    I still use this method to produce a portable tortoisehg. One thing I would add is that if you don't have administrative rights, you can "advertise" the product to yourself, allowing you to unpack it. Just run `msiexec /ju tortoisehg-(version).msi` prior to the above. – icabod Sep 06 '11 at 09:22