2012-06-20 37 views
21

Gần đây, chúng tôi quyết định di chuyển các dự án của mình từ Github sang BitBucket. Hiện tại, tôi đã thử nghiệm với một số dự án vì BitBucket có tính năng nhập trực tiếp. Mọi thứ đều ổn, ngoại trừ các vấn đề Github và wiki không được nhập. Vì hầu hết các dự án vẫn đang trong quá trình phát triển và một số dự án sản xuất, các vấn đề và wiki là quan trọng đối với chúng tôi. Tôi đã tìm kiếm nhanh trên Google và không thể tìm thấy giải pháp phù hợp.Làm thế nào để nhập các vấn đề Github và wiki vào BitBucket?

Bạn có gặp phải sự cố tương tự không? Có giải pháp nào không? Nó sẽ thực sự hữu ích nếu có bất kỳ giải pháp cho việc này. Cảm ơn trước!

Trả lời

7

Cả github và bitbucket đều có API REST cho các sự cố (GitHub's, Bitbucket's), vì vậy bạn có thể viết một kịch bản nhanh (khá) để di chuyển các sự cố. Tuy nhiên, GitHub không có API cho wiki (Bitbucket), vì vậy, thật không may, bạn có thể sẽ phải làm điều đó bằng tay.

+7

Về API cho wiki, GitHub wiki cũng là một [Git kho] (https://github.com/blog/699-making-github-more-open-git- được hỗ trợ). Bạn có thể 'git clone' nó, xử lý nó và đẩy nó vào Bitbucket thông qua API của Bitbucket. – uzyn

12

Tôi cũng đang tìm cách nhập các vấn đề Github vào Bitbucket nhưng không tìm thấy, vì vậy tôi đã viết một kịch bản để làm điều đó: https://github.com/sorich87/github-to-bitbucket-issues-migration.

Đối với wiki, đó là kho lưu trữ Git mà bạn có thể sao chép đơn giản. https://github.com/blog/699-making-github-more-open-git-backed-wikis

+1

Dường như nó bị hỏng: /usr/lib/ruby/vendor_ruby/json/common.rb:155:in 'initialize ': Một văn bản JSON ít nhất phải chứa hai octet! (JSON :: ParserError) \t từ /usr/lib/ruby/vendor_ruby/json/common.rb:155:in 'mới' \t từ/usr/lib/ruby ​​/ vendor_ruby/json/common.rb: 155: trong 'parse' –

19

Hôm nay, chúng tôi đã thêm vấn đề nhập và xuất thích hợp vào Bitbucket. Bạn có thể xuất toàn bộ trình theo dõi vấn đề của repo dưới dạng zip và sau đó nhập lại trên một repo khác.

Bạn cũng có thể tạo các khóa của riêng mình và do đó bạn có thể viết các tập lệnh di chuyển rất đến và từ trình theo dõi vấn đề khác (ví dụ: GitHub).

chi tiết: https://confluence.atlassian.com/display/BITBUCKET/Export+or+Import+Issue+Data

định dạng tập tin và bố trí dữ liệu: https://confluence.atlassian.com/pages/viewpage.action?pageId=330796872

+2

Các liên kết hoặc ví dụ về cách tạo lưu trữ như vậy từ dữ liệu của github sẽ rất hữu ích ở đây. –

+0

Ở đây bạn đi ... Bài đăng này cho thấy cách làm điều đó rất đơn giản: http://codetheory.in/export-your-issues-and-wikis-from-github-repo-and-import-to-bitbucket- di chuyển/ –

-5

Đây là giải pháp đơn giản nhất tôi đã tìm thấy:

cd $HOME/dev/Pipelines 
git remote rename origin bitbucket 
git remote add origin https://github.com/edwardaux/Pipelines.git 
git push origin master 

Và khi bạn hài lòng với Github và không cần điều khiển từ xa cũ:

git remote rm bitbucket 
+3

Nhưng điều này không di chuyển các vấn đề cũng như wiki. Nó thường phức tạp hơn một chút so với việc di trú mã. –

+0

Cũng như đối với tập lệnh cụ thể của bạn: 1) câu hỏi là về di chuyển từ github sang bitbucket, chứ không phải ngược lại; 2) nó sẽ không di chuyển các thẻ và, đôi khi, các nhánh (bạn phải kéo và đẩy chúng một cách rõ ràng, 'push --all' và' push --tags' là hữu ích). –

1

Có một công cụ khác, được viết bằng python, để xuất các vấn đề github thành định dạng xuất bitbucket.

Bạn có thể kiểm tra xem nó ở gibiexport

Các vấn đề liên quan