質問: gitのbranchで添付ファイルのようなことは可能なのでしょうか。 現在の運用パターンとしては1のような形で pushするとそのまま公開サイトに反映するのですが 少し大きな変更をする際にバグがあればそのままに公開されてしまう状態です。 そこでブランチを公開用リポジトリに作りそちらを確認するようなことはできるのでしょうか。 (パターン2) またブランチからマージして本来はマスターをpushするのが 一般的だと思いますが、pushしてバグが出てしまった場合 ローカルのマージ前のマスターから再度pushしてバグ発生前の状態にすることは可能でしょうか。 (パターン3) 今回大幅な変更がありローカルで作業をたくさんして (途中でローカルでaddだけは何回かしてしまった) 一気にリモートへpushする必要がありこのようなことを考えてしまいました。 もっと効率の良いお勧めのやり方がありましたらそちらもぜひ伺いたいです。 よろしくお願いいたします。 ![画像の説明をここに入力](https://i.stack.imgur.com/jzPAU.png)
回答: > > そこでブランチを公開用リポジトリに作りそちらを確認するようなことはできるのでしょうか。 > > > そちらでの運用され方次第ですが、できます。 確認用のリモートブランチを作成してください。 > > またブランチからマージして本来はマスターをpushするのが 一般的だと思いますが、pushしてバグが出てしまった場合 > > ローカルのマージ前のマスターから再度pushしてバグ発生前の状態にすることは可能でしょうか。 > > > 一般的かどうかはわかりませんが、developやdeployといった用途に応じたリモートブランチを用意するプロジェクトが多い気がします。 * 例:developブランチには各開発者がpush可能、deployは権限を持ったメンバーがpush可能、masterにpushできるのはリーダのみ、等 また、一度リモートにpushしてしまったコミットを削除すると履歴が壊れるため、他にそのコミットを参照している人がいると迷惑をかけてしまいます。取り消したい場合はrevertコミットを作成した方が良いでしょう。