I am using SourceTree's Mercurial to interact with a SVN server (which is old, senile and not under my control). I had a conflict at one point which I was trying to resolve. I attempted to graft my (local) Mercurial branch to the SVN head. This gave me some warning about it being dangerous, so I cancled the process. I then stripped the local branch, switched to the SVN head and made some more local changes.
Now, when I try to commit, SourceTree complains that I have a graft in progress. If I chose Abort, it reverts all my local uncommited changes. If I chose Continue, it says
hg graft -y --continue skipping ancestor revision 142 Completed with errors, see above
and next time I try to commit it complains that I still have a graft in progress. However, if I run
/Applications/SourceTree.app/Contents/Resources/mercurial_local/hg_local commit -u username
in the repo folder, it happily commits and I can then go to SourceTree and Push. But regardless of what I commit at the terminal, SourceTree is convinced I have a graft in progress.
How can I tell SourceTree that, no, I really don't have a graft in progress, shutup and just commit.
This warning is triggered by the presence of a file called '.hg/graftstate' in your repository. This file is usually cleaned up by Mercurial when you finish a graft. Is the file empty?
Nope, it's got some hash value in it. Since I'm pretty confident the graft didn't really happen, I'll just delete it. Thanks!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.