OK私は少しグーグルを持っていて、同じメッセージを見つけましたが、人々がそれを持っているさまざまな方法を見つけたので、解決策を見つけることができません。私はmecurialが初めてなので、これを正しく行っていることを確認したいです。
したがって、上記のエラーメッセージが表示されます。開発サイトとライブサイトがあり、コードをコードベースにプッシュしようとしています。
しかし、昨日、私は誤ってhg add
をしました。これは、やりたくないすべてのメディアを追加しました。コードベースからすべてのメディアファイルを削除してから、変更をコミットしてプッシュすることにより、元に戻しました。それで今日、CSSファイルといくつかのテンプレートに変更を加えました。変更をコミットしてプッシュしましたが、hg Push
を実行すると、上記のエラーが表示されます。
Hgログを実行しましたが、クリーン/新しいブランチ/プロジェクトであるため、コミットは6つしかありません。何か助けていただければ幸いです。正しく説明していない場合は申し訳ありません。
これは「エラー」メッセージではありません。それは完全に正常な状況です。そのメッセージは、「ねえ、あなたが仕事をしている間に他の人がそのリポジトリに新しい仕事をプッシュしました。おそらくあなたは自分の仕事を自分の仕事に統合する必要がないので自分の仕事を自分の仕事に統合すべきですか?」
最初に:
hg pull
そして次に:
hg merge
ちなみに、実際にhg revert
コマンドを使用した場合に行ったrevert
は、これらのファイルを履歴から削除しなかったため、おそらく履歴はかなり大きくなります。
Mercurial book の最初のいくつかの章を読むことを検討してください。これらの状況を非常によくカバーしています。
競合する変更をキャンセルする
hg outgoing
プッシュされていないコミット/競合する変更を含む行が表示されるはずです。変更セットのリビジョンを検索します。ここに64
searching for changes
changeset: 64:1830948c246e
それから
hg strip 64
これは私のために働いた。
hg Push -f
より多くのコマンドについては、試してください
hg help Push
TortoiseHgでは、これを行うことができます。
1 =>ファイルをコミットする
2 =>コードをプッシュする新しいブランチに移動します
3 =>このブランチで、Mergeを開発して実行します
4 =>エラーなしでコードをプッシュします!
Mercurialを使用する最良の方法-フォルダーにgit init
を作成します。そして、gitをローカルで使用します。 gitなどにマージします。そして、Mercurialを使用してプッシュバックします。これがMercurialを使用する最も簡単な方法です。それ以外の場合、Mercurialは単に機能しません。