Cập nhật tháng 12 năm 2016: Phản chiếu được hỗ trợ với GitLAb EE 8.2+: xem "Repository mirroring".
Theo nhận xét của Xiaodong Qi:
Câu trả lời này có thể được đơn giản hóa mà không sử dụng bất kỳ dòng lệnh (chỉ cần đặt nó lên trên giao diện quản lý repo Gitlab)
câu trả lời gốc (tháng 1 năm 2013)
Nếu repo gương từ xa của bạn là bare repo, thì bạn có thể thêm móc hậu nhận vào gitla của mình b-quản lý repo, và đẩy đến repo từ xa của bạn trong đó.
#!/bin/bash
git push --mirror [email protected]:/path/to/repo.git
Như Gitolite (được sử dụng bởi Gitlab) mentions:
nếu bạn muốn cài đặt một cái móc chỉ trong một vài kho cụ thể, làm điều đó trực tiếp trên máy chủ.
đó sẽ là ở:
~git/repositories/yourRepo.git/hook/post-receive
Caveat (Cập nhật Ocotober 2014)
Ciro Santilli points out in the comments:
Hôm nay (Q4 2014) điều này sẽ thất bại b ecit GitLab tự động liên kết symlink github.com/gitlabhq/gitlab-shell/tree/… vào mọi kho lưu trữ mà nó quản lý.
Vì vậy, nếu bạn thực hiện thay đổi này, mọi kho lưu trữ bạn sửa đổi sẽ cố gắng đẩy.
Không đề cập đến các xung đột có thể xảy ra khi nâng cấp gitlab-shell
và tập lệnh hiện tại là tập lệnh ruby chứ không phải bash (và bạn không nên xóa nó!).
Bạn có thể khắc phục điều này bằng cách đọc tên thư mục hiện hành và đảm bảo song ánh giữa đó và điều khiển từ xa, nhưng tôi khuyên bạn nên mọi người tránh xa xa những điều
See (và bỏ phiếu cho) feeadback "Automatic push to remote mirror repo after push to GitLab Repo".
Cập nhật tháng 7 năm 2016: Tôi thấy loại tính năng bổ sung cho GitLab EE (Enterprise Edition): MR 249
- Thêm khả năng để nhập URL đẩy xa dưới thiết lập Repository Gương
- Thêm mã thực hiện để đẩy tới kho lưu trữ từ xa
- Thêm nhân viên nền mới
- Hiển thị ngày cập nhật mới nhất và lỗi đồng bộ hóa nếu chúng tồn tại.
- Đồng bộ gương từ xa mỗi giờ.
Lưu ý rằng gần đây Remote Mirror Repository
(issues 17940) có thể được khôn lanh:
tôi đang cố gắng để thay đổi phát triển chính của module Nguồn NPM mở của công ty tôi Lossless GmbH (https://www.npmjs.com/~lossless) từ GitHub. com để GitLab.com
tôi nhập khẩu tất cả các hợp đồng mua lại từ GitHub, tuy nhiên khi tôi cố gắng để tắt Mirror Repository
và bật Remote Mirror Repository
với URL GitHub gốc tôi nhận được một lỗi nói:
Remote mirrors url is already in use
Đây là một trong những hợp đồng mua lại này không thành công với: https://gitlab.com/pushrocks/npmts Chỉnh sửa 2 months ago
quay ra, nó chỉ đòi hỏi nhiều bước:
- vô hiệu hóa Mirror Repository
- nhấn save
- xóa URl
- báo chí tiết kiệm
- sau đó thêm Remote Gương
Điều này đã được yêu cầu tại: http://feedback.gitlab.com/forums/176466-general/suggestions/4614663-automatic-push-to-remote-mirror-repo-after-push-to Đi lên và upvote nó . –