問題タブ [revert]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
svn - Subversion: 分岐/タグ付け後にトランクを以前のリビジョンにリセットできますか?
私はトランクでお互いに依存している多くのプロジェクトを持っています。依存関係の問題につながるいくつかのコミットを行いました。
/trunk を /tags/trunk-experimental にタグ付けしましたが、最後の N 個の変更 (問題の原因となった) を「元に戻す」必要があるため、/trunk が再び正常に機能するようになります。
これは簡単な方法で行うことができますか?
特定のリビジョンからチェックアウトしようとしましたが、更新によってすべてが最新のリビジョン (依存関係の問題を含む) に戻されるため、これは良くありません。
私の質問をよりよく理解するためのタイムラインは次のとおりです。
- リビジョン 1000 (良い)
- 依存関係の問題につながるいくつかの変更、
いくつかのコミット、現在はリビジョン 1050 (悪い) - /trunk を /tags/trunk-experimental にコピー (リビジョン 1051)
- トランクをリビジョン 1000 に「戻す」ためにどうすればよいかわかりません
svn - 偶発的な「svn revert」から回復する方法はありますか?
私は今朝、次のことを行って自分の足を撃つことができました。
- プロジェクトの変更に取り組み始めました
- たくさんのファイルにたくさんの編集を加えた
- 私のアプローチがすべて間違っていて、最初からやり直す必要があることに気づきました
- プロジェクトの最上位に cd し、「svn --recursive revert 」を実行しました。ローカル サンドボックスを変更前の状態に復元します。
- ローカルのサンドボックスに他にも多くの未解決の変更があり、それらをすべて消去したばかりであることに気付いたとき、恐怖に吠えました。(先週の金曜日に svn サーバーがダウンしていたのでチェックインできず、週末にそれらのことを忘れていました)
幸いなことに、この場合、金曜日に仕事を辞める前に「svn diff > temp.txt」を実行しており、temp.txt ファイルはまだハード ドライブに残っていたので、そのファイルを「パッチ」にフィードして復元することができました。失われた変更。
しかし、私の将来の参考のために(つまり、次回同じ愚かな間違いを犯したとき)...「svn revert」を元に戻すようにsvnに指示する方法はありますか?svn はローカル/チェックインされていない差分のバックアップをどこかに保持していますか?
git - git:追加の元に戻されたコミットなしでgitを元に戻すためのより良い方法
リモート+ローカルブランチにコミットがあり、そのコミットを履歴から破棄して、それらの一部を独自のブランチに配置したいと思います。
基本的に、今私は持っています:
そして私は欲しい:
これは、私のローカルリポジトリと(オリジンと呼ばれる1つだけ)リモートリポジトリの両方にあるはずです。
それを取得するための最もクリーンな方法はどれですか?
また、そのリポジトリのクローンを作成し、マスターブランチをチェックアウトした人もいます。リモートリポジトリでこのような変更を行う場合、「git pull」はそれらが同じ状態になるように機能しますか?
git - Git の変更を破棄できないようです
コマンドラインから次を見た後:
次のコマンドを入力して、変更を破棄しようとしています。
しかし、git status を再実行すると、まったく同じように見えます。チェックアウトが機能していないようです。私は何か間違ったことをしていますか?Windows/cygwin で GIT 1.6.1.2 を使用しています。
svn - svnで特定の拡張子を持つファイルを元に戻す方法は?
私はこのようなことをしたいと思います:
svn revert --recursive mydata/*/*.txt
ディレクトリmydataにある* .txt拡張子を持つすべてのファイルを元に戻したいと思います。それを行う方法はありますか?
file - Subversionが@記号を含むファイルをスキップするのはなぜですか?
このようなコマンドを実行しようとすると(コマンドラインまたはPerlスクリプトから-関係ありません):
SVNはこのファイルをスキップして、以下を出力します。
私はやってみました:
しかし、同じ結果が得られます。
GUIからこれらのファイルを元に戻すことができます。そして、私はこれらのファイルを元に戻すことができます(しかしそれは私が望む以上に元に戻します):
これに対する回避策はありますか?
git - git status は変更を示し、git checkout --それらを削除しません
作業コピーへのすべての変更を削除したいと考えています。
実行git status
すると、変更されたファイルが表示されます。
私がしていることは、これらの変更を削除するようには見えません。
例えば:
git - git reset --soft HEAD^ 後にプッシュできない
ちょうど今、私は何かをコミットしてプッシュしました (はい、プッシュの間違いです)。そのため、私は自分の側で発行するように言われgit reset --soft HEAD^
ました。これにより、何らかの方法で「元に戻す」コミットが作成され、一度コミットされると、変更がまったく起こらなかったかのようになると考えました。変化の歴史がそこにあるかどうかはまったく気にしません。それは私が想像したことです。
とにかく、それを行った後、もう一度コミットし、プッシュしようとすると、非早送りエラーが発生しました。今、私はリセットで何かを台無しにしたことを知っています.私のツリーとオリジンツリーのラインに沿った何かが今「不一致」ですが、これを修正する方法を考えています. ここで、リセットを発行する前の時点に戻りたいだけなので、他の誰かがプッシュされたコミットを元に戻す正しい方法を推奨できない限り、変更を手動で取り出してからコミットすることで、変更を手動で元に戻すことができます。これは、ログなどから履歴を削除する必要があるという意味ではありません。
git - ローカルブランチをgithubの状態に戻すにはどうすればよいですか?
ローカル リポジトリの間違ったブランチに対して少し開発を行いました。私はgit branch
次の を実行せずに を実行しましたgit checkout
。コマンドは次のようになります。
そして、間違ったブランチで作業していることに気付きました。私の github リポジトリは適切な状態ですが、ローカル リポジトリはそうではありません。開発から release-v0.2.0b に変更をマージしましたが、開発を github リポジトリの状態にリセットしたいと思います。これについて最善の方法は何ですか?
svn - SVN同期とヘッドへの更新(サブクリップ)
私は Subversion と Subclipse の両方にかなり慣れていませんが、ヘッドへの更新と同期には違いがあると思わせる問題がいくつか見られます。具体的には、(サブクリップ履歴を使用して) 元に戻そうとすると、「パス自身の将来の履歴から範囲を逆マージできません。最初に更新してみてください」というメッセージが表示されることがよくあります。私の同期では、REPO のブランチにすべてのファイルの「ヘッド」バージョンがあることを確認する必要がありますが、「ヘッドへの更新」を実行すると問題が解決します...では、何が得られますか? SVN コンソールをチェックして何が変わったのかを確認しようとしましたが、あまり詳細ではありません。
アイデア?
2 番目の質問がありますが、1 番目の質問に対する答えがそれに光を当てると思います。興味があり、読む時間があれば、私も入力します。これがシナリオです...「Production」タグからすべてのファイルを分岐し、プロジェクトの作業を開始しました。数回コミットした後、変更されたファイルの履歴を確認すると、「太字」のバージョン (ドキュメントによると、これは head である必要があります) がすべてのコミットの下にあることに気付きました。私が持っているのは頭ではないかのようです。しかし、頭はプロジェクトの最新バージョンですよね? それで、私は何が欠けていますか。
ご回答いただきありがとうございます。お時間を割いてお読みください。