リモートチェンジセットからaを削除する方法、またはチェンジセット全体を削除する方法はありますか? .war
ファイルを誤ってリモートのリポジトリにプッシュしましたが、削除します。Mercurial:リモートブランチからチェンジセットを削除する
答えて
私は履歴を編集するためにhg mqueue extensionを使用しました。それは働いたようです。 ありがとうございます。
Mercurialは、データの安全性を維持するのが非常に難しいので、一般的に履歴を変更することはできません。
言われているように、Mercurialの拡張機能は数多くあり、あなたは簡単に履歴を変更することができます。 page on the wiki about editing historyがあります。そのページではその結果についても説明します。
あなたの特定のケースでは、他の人があなたのチェンジセットを既に引っ張っているかどうか自問自答する必要がありますか?もしそうなら、あなたがそれを取り除いても、それは彼らのクローンにまだ残っており、あなたはそのミスを受け入れる方が良いかもしれません。
削除する場合は、hg clone
を使用してコピーを削除することをおすすめします。常にバックアップを取っておくので、安全な方法です。リモートリポジトリに[z]
をプッシュした場合:
[x] --- [y] --- [z]
、今、それを削除したい場合、サーバにログインし、その後repo-without-z
が[y]
まですべてchangestsを含んでいます
hg clone -r y repo repo-without-z
を行う - つまり、 [z]
は削除されています:
[x] --- [y]
あなたはその後、作業を続けて、新しいチェンジセットをプッシュすることができます:
[x] --- [y] --- [w]
私はすでに[z]
チェンジを引っ張られ、今[w]
を引っ張っていた場合、私は、リポジトリに二つのヘッドが表示されます。
[w]
/
[x] --- [y] --- [z]
これは、それ自体は危険ではありません - しかし、人々は驚くかもしれません。私がクローンから[z]
を削除すると、私はあなたと同じリポジトリになります。しかし、上記のように、多くのユーザーがいる場合、これは実用的ではないかもしれません。
MQ extension~のストリップをそのまま使用することもできます。そうすれば、あなたは新しいクローンを作れません。
最後に、プッシュがサーバー上で最後に行われた操作であることが確実であれば、hg rollback
を使用して最後のトランザクションを削除できます。しかし、リポジトリにプッシュできる唯一の人であれば、これをしないでください。そうしないと、別のトランザクションをロールバックする可能性があります。
リポジトリがBitbucketの場合、サーバーにログインできません。しかしBitbucketは最近、そのウェブインターフェースにストリップ機能を追加した。 「管理者」セクションの「リポジトリ管理」を探します。
あなたの投稿をありがとう。私は実際にbitbucketを使用しています。私はbitbucket repoからコミットを取り除こうとしていましたが、不可能と思われます。ストリップを使っていても、bitbucketは(私がアップロードした戦争のために)たくさんのスペースを占めていると私に伝えます。 –
Bitbucketは削除されたリビジョンのバックアップを作成し、バックアップはあなたのクォータに向かってカウントします:-( Bitbucketでリポジトリを削除し、同じ名前で再度作成し、ローカルクローンからプッシュします。 –
上記の私のコメントもはや有効ではありません。下記の[Jesper's](http://stackoverflow.com/a/909290/110204)の回答を参照してください。 –
Bitbucketはストリッピング時にバンドル(バックアップ)を提供しますが、これはではありません。はあなたのクォータにカウントされます。そのように見える理由は、使用するスペースの量を指定するキャッシュキーを無効にしていないためです。
これはシステム上のバグであり、改善されます。それまでは、チェンジセットは削除されており、バックアップは無料です:-)
ニースジェスパー、お寄せいただきありがとうございます:-) –
私は私がマージされたブランチを削除する同様のケースリモートでTortoiseHgのを使用して「Dev」のブランチから「」チェンジた:
- ブランチAの親枝から枝AAを作成します。その起源。
- AをAA(作業ディレクトリ)にマージし、「他のリビジョンからのすべての変更を破棄する」オプションがチェックされていることを確認します。
- DevブランチにAAをマージします(ブランチAの変更が削除されたことを示すコミットメッセージ付き)。
DevにはブランチAの変更は存在しません。
これは私にとって素晴らしいソリューションです。私はちょうど(2)のために、あなたが "AをAAに併合"して捨てることを意味すると思う。とにかくそれは私がやったことです。その後、ステップ3では、望ましくない変更をすべて取り消した素晴らしいコミットを作成しました。 –
- 1. リモートブランチを削除せずにローカル "リモートブランチ"を削除しますか?
- 2. Gitのリモートブランチを削除
- 3. 偶発的にリモートブランチを削除する
- 4. gitリモートブランチを削除するには
- 5. TFS gitリポジトリのリモートブランチを削除する
- 6. Mercurial repoからlargefilesを削除する方法
- 7. TortoiseHGとMercurialのリビジョンを削除する
- 8. Mercurialチェンジセット概要/ユーザ/日付を参照
- 9. Mercurial - 異なるブランチからチェンジセットを移植する(TortoiseHgを使用)
- 10. Mercurialリポジトリから余分なフォルダを削除します
- 11. ローカルのgitを削除せずにリモートブランチを削除するには?
- 12. 特定のチェンジセットをGitリポジトリから完全に削除しますか?
- 13. Mercurialで 'アクティブな'チェンジセットを決定していますか?
- 14. mercurial:コミット後、プッシュ前に削除されたリポジトリから回復
- 15. "git log -all"からのリモートブランチの除外
- 16. Mercurial最終的なブランチを削除
- 17. Gitを使ってリモートブランチを削除するには?
- 18. は、リモートブランチを削除する(原点を押して「:」)gitpython
- 19. Node.jsを使用してリモートブランチを削除する方法は?
- 20. RTCでサンドボックスを削除せずに着信チェンジセットをロードする
- 21. Mercurialの特定のチェンジセットでファイルハッシュを取得する
- 22. GitHubのリモートブランチを強制的に削除する方法は?
- 23. リモートブランチ上にpushされたgitコミットを削除する
- 24. リモートブランチを削除するための別名
- 25. リモートブランチを削除するときのGitHubフロー
- 26. ローカルに存在しないリモートブランチを削除する
- 27. リモートブランチが削除されたときにローカルリモートトラッキングブランチを削除するにはどうすればよいですか?
- 28. マージ中のMercurialファイルの削除
- 29. Merge後のMercurialブランチの削除方法
- 30. Mercurial:バンドルに秘密のチェンジセットを含める?
ya、http://mercurial.selenic。 com/wiki/EditingHistoryを使用すると、リビジョンに戻り、個々のリビジョンを削除したり、リビジョンで変更(パスワードの削除)を行うことができます – xster