2015-09-24 17 views
9

Tôi có một số nhà phát triển làm việc trên một phiên bản Gitlab cục bộ. Khách hàng yêu cầu repo Github của họ được cập nhật. Vì vậy, repo Gitlab của chúng tôi nên đẩy bất kỳ cam kết trực tiếp đến Github. Mọi cam kết với Github cũng tương tự như vậy được kéo vào Gitlab.Cách đồng bộ hóa gitlab với github

Tôi có thể thực hiện phần đầu tiên (dev -> gitlab -> github) bằng jenkins hoặc thứ gì đó, nhưng bị kẹt ở phía sau. Gitlab và Jenkins của chúng tôi chạy bên trong tường lửa của chúng tôi.

Bất kỳ gợi ý hoặc con trỏ nào (hoặc thả các giải pháp!) Sẽ rất được đánh giá cao.

+0

bạn không thể chạy một quy trình trên máy tính dev để đẩy tới github? –

Trả lời

0

Để đồng bộ từ GitHub sang GitLab, bạn có thể sử dụng Webhooks để gửi thông báo đến trang web của mình và có thể quản lý bằng cách nào đó (mặc dù tôi không biết GitLab có hỗ trợ tính năng này không).

Và với việc triển khai nhiều hơn một chút, bạn có thể (theo lý thuyết) sử dụng API GitHub.

Tôi cũng tìm thấy một small script có tên là "đồng bộ đơn giản (và dơ bẩn) giữa các vấn đề về các vấn đề về redmine và các vấn đề gitlab" nên làm ít nhất điều này.

+0

Thông tin thêm về API: https://developer.github.com/ – rugk

4

Chỉ có trong phiên bản doanh nghiệp và trên GitLab.com, nhưng GitLab đã giới thiệu tính năng này trực tiếp, mà không có bất kỳ giải pháp nào.

Họ đã documented pulling from a remote repository.

Đó là trong cùng một phần của cấu hình mà bạn có thể đẩy, quá:

  1. Từ bên trong một dự án sử dụng biểu tượng bánh răng để chọn Gương Repository
  2. Cuộn xuống Push to một kho lưu trữ từ xa
  3. Dấu kiểm Kho lưu trữ gương từ xa: Tự động cập nhật các nhánh, thẻ và cam kết của gương từ xa từ kho lưu trữ này mỗi giờ.
  4. Nhập kho lưu trữ bạn muốn cập nhật; cho GitHub bạn có thể bao gồm tên người dùng và mật khẩu của mình trong URL, như vậy: https://yourgithubusername:[email protected]/agaric/guts_discuss_resource.git

Lưu ý rằng tôi chưa thử, nhưng bạn có thể đẩy và kéo từ cùng một kho lưu trữ. Nó làm việc tuyệt vời cho tôi kéo từ một kho lưu trữ từ xa (drupal.org), và đẩy đến một kho lưu trữ từ xa khác (gitlab.com).

+1

Có giải pháp nào cho Gitlab-CE không? – Martin

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