Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

What to do with your Mercurial repos when Bitbucket sunsets support

531 comments

esoft-adm
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

We will have to migrate 78 repositories: it will take a long time to convert source codes!

But the most critical question is: how could we transfer all the settings (metadata, issues tracker, etc.) from the old Mercurial project to the new Git project without an automatic function?

Like # people like this
-tukanos-
Contributor
August 21, 2019

If I wanted a git I would pick github.  For me it is switching to other mercurial provider.  Thank you BitBucket for your service.

Like # people like this
Gwylim
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

"...no longer be able to create new Mercurial repositories"

Fine, I prefer mercurial but, yes the industry has chosen and it would be a support burden, my new projects will be git.


"...and all Mercurial repositories will be removed."

I'll be looking at alternative providers.


You are at the very least going to have to clarify what removed means? If we miss the boat are we going to be able to download the source or will all our work just be gone?
The latter seems reasonable to implement and given your refusal to provide an online migration tool seems the least you could do.

Like # people like this
Tara McGrew
Contributor
August 21, 2019

Presumably Atlassian's end goal is to get out of the source code hosting business and focus on Jira, because this move wouldn't make sense any other way -- what reason is there to host a Git repository on Bitbucket instead of GitHub?

Heptapod looks interesting, but I'd have to self-host it. I'll be keeping an eye on this thread to see what people have to say about other cloud-based hosts.

Incidentally, I found the first email I got from Bitbucket after signing up back in 2011. Here's what it said at the top:

Thank you for signing up for Bitbucket!

We're excited that you're getting started with Mercurial, arguably the best distributed version control system around.

Like # people like this
Shchvova
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

I want to take a minute to thank Bitbucket for years of excellent service. As company we pay hundreds dollars monthly for mercurial hosting, and lot of our infrastructure are tied to like 600+ Mercurial repositories.

I love Mercurial, and I find that it's more comprehensible tool for my tasks. It is my opinion. But it seems that we are going to be forced to move to Git, it is going to be Github, especially with Github actions available for us in beta, it is a no brainer for Git development.

Like # people like this
Joseph Heenan
Contributor
August 21, 2019

gitlab have an open issue about creating a mercurial importer here:

 

https://gitlab.com/gitlab-org/gitlab-ce/issues/24633

 

I'd encourage anyone that would consider a bitbucket hg -> gitlab git migration that retained issues/pull requests/etc to comment / vote on that issue please!

Like # people like this
P
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019
Svante Seleborg
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

I just realized the extent, and possibly the rationale, of the refusal to provide a migration tool...

This also means that our 100s or thousands of issues will be lost ( for example https://bitbucket.org/axcryptab/axcrypt-net/issues ), because the issue-list is tied to the repository - so even if we succeed in migrating the source code to a git repository on bitbucket - our issues won't. And git repositories on bitbucket doesn't support the issue feature. So I guess the idea is to move the issues to Jira. Manually!?

And... Atlassian seems to say that in June 2020 they will just summarily delete the repositories - including the issues presumably then since there is no issue-functionality in Bitbucket git repositories.

And no migration available, in fact Atlassian explicitly and definitively says everybody is on their own.

Wow, I just say wow....

No bloody way I move all this back to Bitbucket after converting to git and manually moving to Jira - in another 5 years Atlassian sees gold at the end of another rainbow and then summarily kills Jira as well I guess.

Too bad, I really liked Bitbucket, Mercurial and especially the perfectly lightweight issue tracker!

Like # people like this
C4rnot
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

github imports to git  from a bitbucket mercurial repository by simply supplying the repository address.  Really simple.

Sorry Atlassian.  Goodbye!

Like # people like this
Joseph Heenan
Contributor
August 21, 2019

github imports to git  from a bitbucket mercurial repository by simply supplying the repository address.  Really simple.

Sadly I believe this only imports the source code, and not any of the history of issues, pull requests, etc - though I'd be very happy to be corrected if I've missed something.

Like gamesbook likes this
Nat
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

If not, is there a way to migrate the issues to a new git repo? 

cayhorstmann
Contributor
August 21, 2019

I just tried the GitHub import feature. It seems to have imported the repo itself just fine. It did not import:

  • Issues
  • Pull requests
  • Wiki
Like # people like this
-tukanos-
Contributor
August 21, 2019

If some "new" VCS comes along the way your git will probably get deleted the same way.   Think twice before using git on BitBucket.

So not the industry has spoken, the users did (respectively their $).  If they would use more Mercurial this would not happen.  

kalthad
Contributor
August 21, 2019

This is really SAD. 

I always appreciated the fact that bitbucket had a very decent mercurial support. 

With this decision bitbucket will not be distinguishable from github or other services.

The  hg-git plugin is fine, but unfortunately cannot convert named branches, which are one of 

the kill features of mercurial, together with topics and the abosorb extension.

 

There is no way to talk you that out?

What a sad day.

 

Uwe Brauer

Like # people like this
Vladimir Pouzanov
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

Can anyone recommend a python api client for bitbucket that actually works?

https://github.com/atlassian-api/atlassian-python-api doesn't seem to support app passwords

https://github.com/GearPlug/bitbucket-python is somewhat functional but is missing some apis

https://bitbucket.org/atlassian/python-bitbucket doesn't have any sane documentation

 

I want something that can return me the list of all my projects and repos contained within now that I'm moving out.

Like Steffen Opel _Utoolity_ likes this
plumb02
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

As well as "Bitbucket in the cloud", we have a self hosted Bitbucket system containing private repos. Will this decision affect any of these Mercurial repos too? Obviously you wouldn't be able to delete the repos (I would hope!) but will support for the Mercurial features continue to exist, or do I need to find an alternative solution for these as well?

 

As a side issue I am interested that you have used the results of a StackOverflow survey to drive this decision. But I am curious as to how many Mercurial repos you are hosting and also compared to how many Git repos you have. Because my (unsubstantiated) feeling is that a LOT of people are still using Mercurial for various good reasons. Would you be prepared to publish these numbers?

Like # people like this
texnic
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

Would love to see the Git adoption history on BitBucket, in percentage (starting with the obvious 0 when Atlassian took over, until today). 

Like # people like this
peplum
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

Please, don't do that or it will be -1 old client.

Like DiGriZ likes this
Markus Jevring
Contributor
August 21, 2019

It's clear from virtually all the posters here that you'll have to provide some kind of transformation tool. I want to add my voice to this as well. I think you risk alienating way too many users otherwise. If you want to remain competitive, give users a reason to stay. A stellar customer service, like this, would let us believe in you.

 

It doesn't even have to be flawless. It's not the end of the world if some edge case isn't covered. Just make it work well enough that you don't lose the code, and that'll satisfy like 80% of people.

 

If you instead ask people to do the git transformation by hand, I don't think they'll choose bitbucket as the "target" system.

Like # people like this
kalthad
Contributor
August 21, 2019

@Markus Jevring 

I think mercurial users will leave bitbucket. I doubt that the important of all the meta data (issues etc) will work (I am glad to use a mercurial extensions for my own issues)

If they switch to git they can ask themselves why not not to  use github.

 

hg-git is good if I want to access the git repositories of others but it is not to good for my own, since it cannot provide support for named branches, because git does not have this important feature.

I tried out sourcehut in the last 2 hours, it works, but bitbucket is more comfortable.

As I said what a sad day

Like # people like this
Corgis
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

This is pretty disappointing but I think it's also short-sighted and possibly misinformed. Both Google and Facebook have invested significant amounts into mercurial tooling which increases the likelihood that people will continue to use Mercurial. I really hope you reconsider.

Edit: typo.

Like # people like this
Alex Bream
Contributor
August 21, 2019

It's a piece of shit! Shame, contempt, and a ray of hatred from Mercurial-users. #nomoney4atlassian

Like # people like this
rajb245
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
August 21, 2019

I managed to migrate my 5 repos from a Windows machine manually using the following ideas:

https://markheath.net/post/how-to-convert-mercurial-repository-to

https://stackoverflow.com/questions/2360944/how-do-i-correctly-install-dulwich-to-get-hg-git-working-on-windows

 

To get hg-git installed on windows with the Mercurial binaries from the MSI installer, I had to hack a Mercurial zip file to patch in hg-git and its dependency, dulwich. Though TortoiseHG has this already, I didn't want to change my hg workflow by installing another version. In my case, the file in question is:

C:\Program Files\Mercurial\lib\library.zip

I got hg-git using: hg clone https://bitbucket.org/durin42/hg-git

I got dulwich using: git clone https://github.com/dulwich/dulwich.git

I copied the library.zip file to a temporary location, opened it using 7-zip, and wrote the directories hg-git/hggit and dulwich/dulwich from the previous steps into the root of the zip file. Then I replaced library.zip with the patched version using the Windows file explorer, using admin permissions to overwrite. Then its just a matter of creating the bare git repos, and doing an hg push from inside the hg repo into the bare git repo. A final clone turns the bare repo into a regular git repo. Then you can make new git repos on Bitbucket and git push there.

This could all be made into an automated script or packaged into a standalone solution, but I'm sure there's some corner cases that wouldn't be handled properly. At least, I wouldn't want to maintain such a thing. That said, I hope the above ideas help others.

Like # people like this
Deleted user August 21, 2019

hg-fast-export seems to have done things pretty seamlessly for me.

Anyone know of a utility that will convert .hgignore formatted files to .gitignore? They're not identical; though it's not the end of the world having to do it manually.

Deleted user August 21, 2019

Any chance you could provide a feature for importing issues from one repo to another? So that the new git repos I create based on the soon-to-be-defunct hg repos can take the issues across?

Like # people like this

Comment

Log in or Sign up to comment
TAGS
AUG Leaders

Atlassian Community Events