まず、あなたがあなたの仕事を失うことはありませんを確認するためにコミットし、現在の作業ツリーがクリーンであることを確認した後、最後に新しいブランチを作成しますブランチ:
git checkout feature
そして、あなたが特定のコミットIDを指すように枝をリセットします(git log
を介して、または任意のGUIアプリケーションを介してIDを検索します):
git reset --hard COMMIT_ID
あなたが好きなコミットを指して、ローカルfeature
分岐を有していたら、強制的にプッシュすることがあり、そのブランチをサーバに:
git push --force
この時点では、上のプルリクエストサーバーには関連するコミットのみが含まれ、関係のない作業は依然としてunrelated-stuff
ブランチで使用可能です。
git stash
の前に保存していない作業があった場合は、git stash pop
で戻すことができます。
他の人のローカルリポジトリを壊す可能性があるため、強制的に押すことは、gitでは非常に推奨されない操作です。プルリクエストのコンテキストでは一般的に大丈夫です(多くのレポオーナーは、レビュー後に清潔で整然としたときにのみPRをマージすることをお勧めします)。決して他の人がいる可能性のあるマスターや他のブランチ取りかかっている。
gitを理解して学ぶための素晴らしいリソースは、http://learngitbranching.js.orgです - あなたが興味を持っているかどうか見てください!