7

私は git と github が初めてで、いくつか問題があります。

私が持っている小さなプロジェクトを管理するために、Windows用のgithubを使用しています。最近コードに加えた変更の一部が失われたと思います。私がしたことは:

  1. 一部のファイルを変更しました。
  2. 誤って変更をコミットしました。
  3. コミットを取り消しました。
  4. 次に、「このコミットにロールバック」を押しました。

これで、追加したいくつかの新しいファイルを含め、すべての変更がなくなりました。それらを保存できますか? git (コマンドライン) もインストールしたので、役立つと思われるコマンドを実行できます。

4

2 に答える 2

7

git の優れた点の 1 つは、変なことをしていない限り、何も失うことが非常に難しいことです。

あなたがしなければならないことは、あなたがなりたい状態を表すポイントを見つけることです.

git ログを調べて、ハッシュ 01dbc4... が戻りたい時点であると判断したとします。これを行うには、次のようにします。

git reset --hard 01dbc4

コミットされていない変更がある場合は、最初にそれらを隠しておく必要があることに注意してください。

そのコミットに必要な追加ファイルがなく、それらが後のコミットにある場合は、もう少し複雑になります。しかし、できることは、開始したいポイントに master ブランチを設定してから、新しいファイルがあるポイントにブランチを設定することです。次に、不足している情報を新しいブランチからマスター ブランチにコピーまたは選択的にマージして、マスター ブランチの外観を希望どおりにすることができます。

上記の git reset --hard を使用して後で孤立したコミットを使用する場合のように、ブランチのポインターを移動した場合でも、それらを調べgit reflogてリセットするか、それらを指すブランチを作成することでそれらを元に戻すことに注意してください。

于 2012-05-31T23:06:40.193 に答える
5

現在 (2013 年 3 月)、GitHub for Windows を使用すると、git コマンドを入力しなくてもコミットを元に戻すことができることに注意してください。

GitHub for Windows の元に戻すボタン」を参照してください。

Discards、Commits、Rollbacks、および Merges の Undo サポートを追加しました。

元に戻すボタン

于 2013-03-21T10:34:01.523 に答える