Fix lỗi trên Git: Remote rejected (shallow update not allowed)

Rate this post

Trong một số trường hợp như thay đổi git remote dẫn tới code không đồng bộ, bạn sẽ gặp lỗi Remote rejected (shallow update not allowed). Hướng dẫn sau chỉ ra cách fix nhanh gọn nhất.

Lỗi Remote rejected (shallow update not allowed) xảy ra khi nào?

Trường hợp cụ thể mình gặp phải như sau:

Mình có 2 git repository khác nhau, 1 cái là cho bản gốc của code base và 1 là cho website hiện tại. Sau đó, mình archive bản gốc của code base (tức không phát hành nữa, chỉ read-only).

git remote -v
- upstream # code-base
- origin # website hiện tại

Do mình vẫn tiếp tục đẩy code thêm trên web hiện tại, nhưng lại chưa push lên upstream TRƯỚC KHI ARCHIVE, nên giờ đây một số branch và tag sẽ không lấy được mới nhất về máy.

Giờ mình muốn đẩy code lên thẳng origin vào nhánh master để lưu thành repository chính thức cho web này:

git push origin HEAD:master

Kết quả báo lỗi giống hình sau:

Lỗi Git trong Terminal

Sau đó mình tìm thấy mọi người trên StackOverFlow đưa ra phương án:

git fetch --unshallow origin

Thực tế thì cái này không hoạt động.

Phương án hoạt động đúng là:

git filter-branch -- --all

Cách này sẽ đi validate tất cả các branch và tag xem cái nào còn tồn tại để nó update lại upstream cho chính xác.

Ref 'refs/tags/v1.0.8' was rewritten
WARNING: You said to rewrite tagged commits, but not the corresponding tag.
WARNING: Perhaps use '--tag-name-filter cat' to rewrite the tag.
Ref 'refs/tags/v1.0.9' was rewritten
WARNING: You said to rewrite tagged commits, but not the corresponding tag.
WARNING: Perhaps use '--tag-name-filter cat' to rewrite the tag.
Ref 'refs/tags/v1.1.0' was rewritten

Sau khi chạy lệnh trên thì mình update push code lên bình thường.

Viết một bình luận

Chuyên gia về Web
Bạn muốn làm việc với dịch vụ website do chúng tôi triển khai?
Liên hệ: 0876-80-84-80
Chuyên gia về Web
Bài viết liên quan

28/01/2023

Hướng dẫn cài đặt php extension mongodb trên Mac OS M1
Khi bạn muốn hỗ trợ MongoDB trên dòng Mac M1, phần cài đặt sẽ cần một chút lưu ý. Hướng...
Git

18/12/2022

Xử lý lỗi Git không thể tiến hành merge do merge.renamelimit
Khi bạn tiến hành merge nhánh phụ vào nhánh chính hoặc lên nhánh production, có thể xung đột xảy ra...
Fix lỗi ERR_TOO_MANY_REDIRECTS khi cấu hình tên miền trên CloudFlare

17/12/2022

Fix lỗi ERR_TOO_MANY_REDIRECTS khi cấu hình tên miền trên CloudFlare
Khi các bạn bật biểu tượng đám mây trên DNS của tên miền tại CloudFlare, nhiều bạn sẽ gặp tình...
Hướng dẫn cài extension ioncube trên phần mềm LocalWP

16/11/2022

Hướng dẫn cài extension ioncube trên phần mềm LocalWP
LocalWP là phần mềm tạo web server dành cho fan yêu thích WordPress. Hướng dẫn này bổ sung cách cài...