1

gitリポジトリがあります。「gitbranch」を実行すると、

 $ git branch
* com-2.1-SS

次に、「git log」を実行すると、コミットのリストが表示されます

$ git log
commit ff878926b78614e8bf6af161da06070618e9ff6b

commit 3ffda8cec60a74a718fb25fb7a9fe4b3c4381137

commit bf6bb3427d8031d8e172c3b8b7909c8580e929cd

だから私は3ffda8cecへの私のリポジトリをチェックアウトしたいと思います。だから私は「gitcheckout3ffda8cec」をしました。

ここまでは順調ですね。それはうまくいき、私は欲しくなる。

しかし、私の質問は、どうすればcom-2.1-SSに戻ることができるかということです。つまり、「gitcheckout3ffda8cec」という事実を逆にします。

「gitbranch」を実行すると、

$ git branch
* (no branch)

私がするとき'gitcheckout git checkout com-2.1-SS

error: pathspec 'com-2.1-SS' did not match any file(s) known to git.
4

1 に答える 1

2

git reflogは、ブランチチップが持っていたさまざまな値を表示し、チェックアウトして前の状態に戻すことができます。

com-2.1-SS以前のsha1git checkoutff878926b78614e8bf6af161da06070618e9ff6b(基本的には何をするのか)今でも知っているので、あなたのケースはより簡単ですので、git reflog直接行うことができます:

git checkout ff878926b78614e8bf6af161da06070618e9ff6b

Althougあなたの説明からあなたのブランチが削除された時点がわかりません、あなたはチェックアウト後にあなたのブランチを再作成することができます:

git checkout -b com-2.1-SS
于 2012-08-27T08:19:23.597 に答える