コードベースを壊しただけです。最後のコミットにロールバックしたいのですが、後で分析できるように、最初に壊れたバージョンを保存したいと考えています。この状況での最善のコースは何ですか?
(私は実際に何も試していません。ただ手を握っているだけです。長い一日だったので、これを台無しにする気はありません..)
コードベースを壊しただけです。最後のコミットにロールバックしたいのですが、後で分析できるように、最初に壊れたバージョンを保存したいと考えています。この状況での最善のコースは何ですか?
(私は実際に何も試していません。ただ手を握っているだけです。長い一日だったので、これを台無しにする気はありません..)
あなたができることがいくつかあります:
おそらく最善の方法は、この壊れたコードをコミットする別のブランチを作成し、そのブランチにコミットすることです。
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についてさらに詳しく知りたい場合の詳細な説明は次のとおりです。
git リポジトリを特定のコミットにリセットするには:
git reset --hard <tag/branch/commit id>
現在のバージョンを保存するには、古いバージョンにリセットする前にリポジトリにコミットするだけです
この壊れたコードを使用して、コミットまたは新しいブランチを実行できます。その後、作業コードをチェックアウトします。
git log -1
コミット名を書き留めます (sha コード - 最初の 7 文字にすることができます)。壊れたコードの新しいブランチを作成する
git checkout -b broken
git add -A
git commit -m "Broken code"
ブランチに戻り、作業コードをチェックアウトします。
git checkout featureX
git checkout abc1234
これを行う別の方法は、変更を隠してコードをチェックアウトすることです。その後、ファイルをスタッシュ ポップして操作することができます。