How do I get Mercurial working on my SSD? - mercurial

I had a problem working with mercurial, outlined here. I eventually figured out that mercurial is just not working properly at all on my SSD drive. It works better on my secondary HDD on the same machine, but doesn't resolve my other issue.
I am using TortoiseHg 4.9.1 on Windows 10.
Doing the following works fine on the HDD:
hg init temp
cd temp
<create test.txt>
hg ci -A -m "test"
But on the SSD, I get the following message, and the file is marked as added, but not committed:
nothing changed (1 missing files, see 'hg status')
hg status shows the following:
A test.txt
I am not noticing any other errors on the SSD (the OS, as well as all programs, are installed on it and everything seems to be working fine). I tried a scan and repair and get no errors.
Everything was working fine for several months, but now, all of a sudden, it is just not working.
Doing the same test using git, works fine.
Does anyone have any suggestions?

Related

TortoiseHg 3.6.3 broke mercurial keyring?

I upgraded to Tortoise 3.6.3 yesterday and now I am prompted every time I pull or push a repo. The keyring is set properly, and my user name is in the url.
Any ideas on what may be wrong? Did 3.6.3 break keyring?
Issue 4401 "mercurial_keyring always asks for user/password" from time of 3.6.2 closed as pure extension-specific and contains solution: don't use username in URL anymore
Here is what to put into .hg/hgrc:
[auth]
default.username=myname
default.prefix=http://myrepo
A good way to debug issues like this is to run merciural from the command line with the debug flag, as in:
hg pull --debug
This will clearly indicate if there are problems getting the repo, user name, and password.
UPDATE: A new version of TortoiseHG has been released (3.8.3 at the time of writing) and fixes this issue: upgrading to latest version should be enough.
I had this exact same problem and found the following investigation article to be quite helpful to better understand what't going on (I'm not the author, BTW).
To cut it short, it seems a bug of the mercurial_keyring extension v1.0.1, introduced in TortoiseHG 3.6.2, which also appears to be fixed in v1.1.1.
If you're into Python compiling, it should be possible to upgrade it manually into TortoiseHG by getting it from its official bitbucket repo, compile it and manually place it into TortoiseHG's /lib/library.zip file (backup it beforehand might be wise): if you're not, you have 2 options:
1) clone the bitbucket repo to your HDD and then configure your Mercurial installation to use the new version of that extension module by writing the following in your C:\Users\USERNAME\mercurial.ini file (which was what I did):
[extensions]
mercurial_keyring = /path/to/mercurial_keyring/mercurial_keyring.py
(Notice: you might also have to put the path in your PATH or PYTHONPATH env variable, depending if you already have Python and/or Mercurial installed on your machine).
2) wait for the next TortoiseHG release that will contain the updated version.

OK to run SVN and Mercurial on the same Windows 7 PC (along with Tortoise SVN & Hg?)

Is this OK to do?
I have one folder that is a checkout of SVN, another that is Hg.
But Windows Explorer is crashing now when I right click a file in the Hg folder.
I uninstalled Hg and then I could right click without a crash.
Reinstalled and crashes came back.
Yes, it's OK. You may have some troubles (but not crashing of Explorer) in case of using different icon-overlays in THG and TSVN (due to limiting amount of overlays to rather small amount)

Bazaar branch default location

I started downloading a MySQL branch using bazaar. However, I stopped the download after around 800 MB and created a shared repository in which I wish to re-download it again.
How do I remove the already downloaded 800MB file? Thanks in advance.
PS: I'm using Ubuntu 14.04 LTS, MySQL 5.5.37 and latest stable release of Bazaar.
After you interrupted the download, if you don't see a directory created then there's nothing to delete, Bazaar handled the interrupt and cleaned up after itself.
If it created something then just delete it with rm -r.

Why can't mercurial revert some local changes?

This has been bugging me for some time now.
I have a Windows 8 VM running in Parallels with tortoisehg 2.9. It happens frequently that mercurial will insist that there are uncommited local changes, even if I haven't changed anything.
I tried "hg revert --all", I tried "hg revert --all -r .", I tried "hg update -c -r .", and still the changes won't go away.
If I open the commit window and check the supposed changes, mercurial thinks the entire file is changed, but to the naked eye there don't seem to be any differences. All the lines look like:
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
Is this a line ending problem? If so, why doesn't my Windows 7 pc at work ever have this problem? Any insight would be greatly appreciated.
Is this a line ending problem?
It can be this problem most probably - check it with good differ, which can show inline changes and switch detection of EOL-style
If so, why doesn't my Windows 7 pc at work ever have this problem? Any insight would be greatly appreciated.
Win7 repository may not have EOL Extension or have different settings (not =native) in it

HG clone returns "abort: HTTP Error 406: Not Acceptable" on Redmine VMWare computer

I'm really new with SCM systems, so I'm starting to study Mercurial, but I'm facing a problem that I have no idea how to fix. I hope someone can point me the right direction :-) :
So, I have installed the BitNami Redmine Stack (http://bitnami.org/stack/redmine) on a Vmware computer with windows 2003 (64 Bits) as the OS. On the same VM I have installed Mercurial-2.3 (Mercurial 2.3 Inno Setup installer - x64 Windows - does not require admin rights) , and restarted. after that , created a directory (e:\helloworld) and I have initialized the directory with some basic the HG commands (HG Init, HG Add, HG Commit).
Using the host computer to confirm the correct communication with the VMWare guest computer, I have created a small project in Redmine, added a repository with Mercurial as the SCM and included the initialized directory (e:\helloworld on the server). The repository is displayed correctly in Redmine, and, working directly in the virtual computer if I do some changes and perform some commits, the changes are displayed in the Redmine repository. From my current limited knowledge, all seems to be ok when I work directly in the VM, but when I try to clone the directory using HG clone from the host computer, the server responds:
C:\helloworld>hg clone http://redminevm/redmine/projects/helloworld
abort: HTTP Error 406: Not Acceptable
I also have tried with the IP address instead of the hostname, adding the username and the password to the URL, or initializing the local folder previous to try the hg clone. all my attemps return the same result. I'm assuming something is incorrect in the server, but I have no idea what it can be.
What should review on the server (or Client), in order to allow me to clone the Mercurial repository thru http?
Thank you very much in advance!
Alex.
Ok, after investigating, and with a big help from the Redmine forum, I can answer my own question. I hope my experience can help someone. My question was because of lack of knowledge about Redmine and what it can and cannot do.
so;even if we can have repositories in a RedMine project, RedMine is not a repository server. Means I can link a repository to a project, but, if I want work on it thru http (or serve multiples repositories) , aditionally I need install a server like rhodecode, or use hg serve. :-)
Saying this, I was doing this incorrectly. After running hg serve , I was able to serve multiples repositories.
Same error if you want to clone a git repo with "hg clone". Yeah, I know, I'm an idiot, but it happens, probably this will help someone.