Tại nơi làm việc chúng tôi sử dụng svn trên máy chủ nhưng tôi đang sử dụng git cục bộ (thông qua git-svn) để tận dụng tốc độ/phân nhánh/cam kết chưa sẵn sàng chia sẻ, v.v.Làm thế nào để giữ một kho lưu trữ git sao lưu đồng bộ với cục bộ, "git push --mirror" hoặc "git remote update"
Điều này hoạt động tốt nhưng tôi không thoải mái khi chỉ thay đổi một máy tính trong vài ngày khi có sự cố. muốn có bản sao lưu riêng tư trên chia sẻ tệp của chúng tôi.
Tôi đã tạo ra một bản sao của repo địa phương của tôi bằng cách sử dụng lệnh như thế này:
git clone --mirror MyRepo z:/MyRepo.git
và đã thêm này như một điều khiển từ xa để địa phương của tôi với điều này:
git remote add backup z:/MyRepo.git
tốt nhất là gì cách giữ kho lưu trữ sao lưu đồng bộ với kho lưu trữ cục bộ của tôi vào cuối ngày?
Tôi nghĩ rằng một trong những điều sau đây nhưng không biết nếu chúng tương đương hoặc không phải là những gì các thương mại được.
Trong kho địa phương:
git push --mirror backup
Hoặc trong kho lưu trữ sao lưu:
git remote update
Hoặc thực sự nếu có một cách tốt hơn?
Thứ như rsync hàng đêm trong thư mục .git bên trong công việc cron có thể phù hợp hơn việc sử dụng git như một giải pháp sao lưu. Nếu bạn đang tìm kiếm một phương thức thủ công, 'git push --mirror' đến một kho lưu trữ trống sẽ thực hiện. – meagar
@meagar tiếc là tất cả chúng ta đều có máy tính xách tay phải bị khóa mỗi đêm vì vậy tôi không thể có được cách làm cron. Hiện đang làm điều git push, chỉ muốn biết nếu tùy chọn 2 về cơ bản là giống nhau. – Argos
Tôi sử dụng 'git push --mirror backup' (sao lưu là bản sao lưu từ xa git repo của tôi). Sau đó tôi sử dụng một kịch bản mà tôi đã viết nếu tôi cần khôi phục từ bản sao lưu chạy 'git fetch backup refs/remotes/*: refs/remotes/*' cũng như một số công cụ resit git-svn (vì tôi không muốn phải phân tích toàn bộ máy chủ SVN vì mất một vài ngày để tất cả các dự án của tôi được chuyển và chỉ mất vài phút - nếu điều đó - để làm cho nó nhân bản và làm mới từ bản sao lưu của tôi). –