擅长:python、mysql、java
<p>当两个alembic迁移从同一个迁移分支时,会发生此问题。通常,当多个人进行模式更改时会发生这种情况。要修复它,您只需将迁移的<code>down_revision</code>调整为最新的。运行<code>alembic history</code>向我们显示:</p>
<pre><code>2f4682466279 -> f34e92e9dc54 (head), Fifth revision (on a separate branch)
2f4682466279 -> f673ac37b34a (head), Fifth revision (local)
2dc9337c3987 -> 2f4682466279, Fourth revision
0fa2aed0866a -> 2dc9337c3987, Third revision
22af4a75cf06 -> 0fa2aed0866a, Second revision
9a8942e953eb -> 22af4a75cf06, First revision
</code></pre>
<p>您可以看到,第五次修订中的一次是在本地进行的,它的下游修订是<code>2f4682466279</code>,但是无论谁进行了第五次修订,都得到了相同的下游修订。</p>
<p>进入第五个修订版文件之一并更新<code>down_revision</code>变量以引用另一个第五个修订版,如下所示:</p>
<pre><code>f673ac37b34a -> f34e92e9dc54 (head), Fifth revision (on a separate branch)
2f4682466279 -> f673ac37b34a, Fifth revision (local)
2dc9337c3987 -> 2f4682466279, Fourth revision
0fa2aed0866a -> 2dc9337c3987, Third revision
22af4a75cf06 -> 0fa2aed0866a, Second revision
9a8942e953eb -> 22af4a75cf06, First revision
</code></pre>
<p>在本例中,我更新了migration<code>f34e92e9dc54</code>以拥有<code>down_revision='f673ac37b34a'</code>。</p>