2

私はローカルの Git リポジトリから GitHub に定期的にコミットをアップロードしていますが、コミットで過負荷になり、それらは役に立たず、履歴を台無しにするだけであると判断した後、rebase -iいくつかのコミットをまとめて squash してみました。

うまくいきそうだったので、変更したコミットを GitHub にプッシュして、そこで履歴を変更したいと思いました。私が得るのは、現在のブランチの先端が遅れているということです。推奨されるアクションは、リモート リポジトリから変更をプルすることですが、リモートからの変更は必要ありません。ローカルにあるものを GitHub に送信したいだけです。

状況を少し説明して、私が望むものを達成するのを手伝ってもらえますか?

4

2 に答える 2

1

コミットを公開した後に履歴を書き換えるのはあまり良いことではありません。他の誰かがあなたのリポジトリをクローンしたと想像してください。後で変更すると、履歴がオリジン (github リポジトリ) と一致しなくなります。

いくつかのソリューションがあり、次のことができます。

  • 試してみて、githubのレポを変更してください。1 つの可能性は、github で気に入らないブランチを完全に破棄してから、配置したローカル ブランチを github にプッシュすることです (silvio の「--force」の方が高速な代替手段です)。

  • リポジトリを完全に削除し、ローカル リポジトリを github に再度クローンします。

  • あまり美しくないコミットと一緒に暮らす(推奨される解決策)。

于 2013-09-04T09:59:54.377 に答える