Is it possible for a verbose output of what exactly is happening when I push/pull the repositories? Currently, I have a large repository that I am pushing to the server, and after about 15 min. or so, it gives me an error, but does not tell me what it was doing during those 15 min.
Did you try the -v verbose parameter? As in;
hg pull -v
hg push -v
I have unselected the previous answer due to additional info. For anybody who comes across this problem, you may be using TortoiseHg 1.1.7 from HERE. Try the newer version from HERE. As far as I can tell, this version is much better, cleaner GUI, more feature-filled interface and has verbose output that I wanted, and overall is definitely worth the switch. The version is 1.9. I am not sure if it is a continuation of the original TortoiseHg or a completely new project altogether.
Related
I've been using hg for a few years with a BitBucket Repo. I use it to archive my development but also to synchronise between different computers (mainly my desktop and my main laptop). So far, no troubles.
But today, when I did an hg pull to get the latest version from the server, I got the response "no changes found", when I can see the changes made yesterday on the server, and still no replicated on my files, locally.
I eventually got the latest version using hg graft -r the_latest_version, which solve my problem for now ... however this was easy to see as it was for a shell script with only a few files.
With projects with plenty of files, I might not spot the problem early enough. Any ideas on what went wrong and how to correct it ?
Cheers.
OK, the answer is: I just forgot I needed to perform hg update after hg pull !
Thanks to #planetmaker for pointing in the right direction !
Sorry for the disturbance!
I'm having this problem when trying to push to a remote server. It is a Mercurial repository on Phabricator. Here are my output.
hg commit -m "udpate README"
hg push
pushing to ssh://company.server
searching for changes
remote: abort: stream ended unexpectedly (got 0 bytes, expected 4)
I'm using the latest version of Mercurial 3.5.2+20151001 on Mac OS 10.10.
I have this problem from yesterday. During that time, I could successfully committed two times, although I did nothing.
Why the output somewhat looks like this question, the problem here is different, because I have deleted the repository and cloned again many times without any problem. (my first attempt to solve the problem)
The system admin and the server is at another city, so he can't take a look at my machine. Any help would be greatly appreciated.
This looks like there may be a problem with the server and client disagreeing on the new bundle2 format for the wire protocol introduced in 3.5. I'd recommend trying to temporarily downgrade to 3.4.2 (e.g. with pip install mercurial==3.4.2) to see if it fixes this. See this discussion on Phabricator. If it doesn't work, hg push --debug --traceback can provide more information on what exactly went wrong.
we use Kiln with mercurial.
Simplified description we have 2 kind of Repositories.
Some Kind of
"CurrentDevelopment" and repositories for each released version for example 13.1 for the released version 13.1. (There are also user repos and more, like descriped in hginit.com but this can be ignored for the moment)
Now sometimes we need to make a fix to a released version. So we fix it in the Repository for the released version. For 13.1.
Then we cann pull from 13.1 to the currentDevelopment repository
This seems to work fine.
But now we could make something in "CurrentDevelopment" and a month later we recognize that this change will also be needed in 13.1 But I can't pull from CurrentDevelopment to 13.1 because there are a lot of other changes i don't want to have in 13.1
I know this is some kind of "cherry picking" which i isn'T easy realized. But if it wouldn't be many source code i code recode them in 13.1.
But after that when i make changes to 13.1 which i pull to current development i would also pull the changes that are already included in CurrentDevelopment :-/ so in worst case i may get merge failures and duplicate code? I'm not sure if mercurial will safely recognize that this code is also contained.
What is the recommended approach to realise these version specific repositories and handle changes between them ? In especial if a change of the current development repository is afterwards needed in a child verison branch?
The graft mercurial command is your friend here.
It allows you to back-port a change to an old branch.
If your Kiln version is older & doesn't have a version of Mercurial that includes the graft command, you could use the (similar but less reliable) transplant extension.
(graft uses Mercurial's merge logic, transplant just uses the patch logic)
edit...
I don't think that graft command is exposed in the UI of the version of TortoiseHg that is currently bundled with Kiln. See how to use graft in TortoiseHg
The command line should still work though.
I am just getting into using Mercurial and I saw that someone was using the command
hg pull - - update -vvv
what does -vvv mean?
Thanks
Not 100% certain (-vvv isn't a standard switch in Mercurial), but -v on its own makes the output verbose. When performing a verbose pull-with-update (hg pull --update -v), this outputs a tad more information, primarily which files are being updated, etc.
Running your command (using -vvv) has the same effect as -v, so Mercurial is treating it as a verbose switch. The output certainly doesn't come out more verbose.
My guess is that the person in question has a stuck key :)
When using IntelliJ with Subversion, there is a view called "Incoming" that lets me see incoming changesets from the remote repository. With the Mercurial command line, there is an equivalent command hg in. I like this command because I can see what's coming before pulling it. This view seems to be missing from the IntelliJ-Mercurial integration; my "Changes" window only has one tab called "Changes." Is there a view for this somewhere?
As of IntelliJ IDEA 11.0, it's still not possible to see "incoming" or "repository" changes with either mercurial or git repositories the way you can with subversion ones.
If you look at the online help for IDEA 11.0 http://www.jetbrains.com/idea/webhelp/local-committed-and-incoming-changes.html you'll see a specific note:
"Repository and incoming changes are not supported by Git and Mercurial integrations."
There is an open issue in the IDEA bug tracker http://youtrack.jetbrains.net/issue/IDEA-73130 reported in August 2011 but without any apparent plans for a fix.