Tôi làm việc trên một nhóm sử dụng alembic để quản lý di chuyển db. Gần đây tôi đã kéo tổng thể và cố gắng chạy alembic upgrade heads
. Tôi nhận được thông báo sau;Làm cách nào để sửa "Yêu cầu sửa đổi trùng lặp với các bản sửa đổi được yêu cầu khác"?
INFO [alembic.runtime.migration] Context impl PostgresqlImpl.
INFO [alembic.runtime.migration] Will assume transactional DDL.
ERROR [alembic.util.messaging] Requested revision a04c53fd8c74 overlaps with other requested revisions 453d88f67d34
FAILED: Requested revision a04c53fd8c74 overlaps with other requested revisions 453d88f67d34
Tôi nhận được thông báo tương tự khi cố gắng chạy alembic downgrade -1
. Chạy alembic history
in bản này;
453d88f67d34 -> a04c53fd8c74 (label_1, label_2) (head), Create such and such tables.
2f15c778e709, 9NZSZX -> 453d88f67d34 (label_1, label_2) (mergepoint), empty message
b1861bb8b23f, b8aa3acdf260 -> 2f15c778e709 (label_1, label_2) (mergepoint), Merge heads b18 and b8a
(...many more old revisions)
đối với tôi trông giống như một lịch sử hoàn toàn tốt đẹp. alembic heads
báo cáo a04c53fd8c74 (label_1, label_2) (head)
.
Điều duy nhất có vẻ lạ với tôi là phiên bản alembic db của tôi có hai giá trị trong đó;
my_postgres=# SELECT * FROM alembic_version;
version_num
--------------
a04c53fd8c74
453d88f67d34
(2 rows)
Tham chiếu duy nhất tôi có thể tìm thấy từ googling ngoại lệ là source code, mà tôi không muốn đọc qua.
Tình huống này có thể xảy ra như thế nào? Tôi nên sửa nó như thế nào? "Chồng chéo" nghĩa là gì?