0

コードベースを壊しただけです。最後のコミットにロールバックしたいのですが、後で分析できるように、最初に壊れたバージョンを保存したいと考えています。この状況での最善のコースは何ですか?

(私は実際に何も試していません。ただ手を握っているだけです。長い一日だったので、これを台無しにする気はありません..)

4

3 に答える 3

5

あなたができることがいくつかあります:

おそらく最善の方法は、この壊れたコードをコミットする別のブランチを作成し、そのブランチにコミットすることです。

git checkout -b my-broken-branch # creates a new branch called my-broken-branch
# commit as usual...
git checkout - # return to the last branch you were on

そのコードに戻りたい場合は、 agit checkout my-broken-branchを実行してそのブランチに切り替えます。


これgit stashにより、作業が保存され、後で再適用できます。

git stash

これらの変更を元に戻したい場合はgit stash apply、最後に隠した変更を適用する a を実行できます (ただし、情報は隠しリストに保持されます)。

アンドリューがコメントで述べたようにgit stash pop、最も少ない隠し変更を適用し、隠しリストから削除することもできます。

複数の stash を実行してそれらを選択的に元に戻すことができるため、stash でできることは他にもあります。

stashについてさらに詳しく知りたい場合の詳細な説明は次のとおりです。

于 2012-05-06T01:42:05.493 に答える
2

git リポジトリを特定のコミットにリセットするには:

git reset --hard <tag/branch/commit id>

現在のバージョンを保存するには、古いバージョンにリセットする前にリポジトリにコミットするだけです

于 2012-05-06T01:42:52.797 に答える
1

この壊れたコードを使用して、コミットまたは新しいブランチを実行できます。その後、作業コードをチェックアウトします。

git log -1

コミット名を書き留めます (sha コード - 最初の 7 文字にすることができます)。壊れたコードの新しいブランチを作成する

git checkout -b broken
git add -A
git commit -m "Broken code"

ブランチに戻り、作業コードをチェックアウトします。

git checkout featureX
git checkout abc1234

これを行う別の方法は、変更を隠してコードをチェックアウトすることです。その後、ファイルをスタッシュ ポップして操作することができます。

于 2012-05-06T01:42:38.223 に答える