VisualStudio2022 上のGit Toolでrebaseしていきたい
Using Rebase in VisualStudio
お昼のお仕事でrebaseしておいてねって話をしたときに、mergeをする人が多い印象を受けた。
恐らく、別に悪意を持ってmergeをしているわけではない気がするのでVisualStudioの操作に課題がある気がしてきたのでまとめていく。
working branchに切り替える
VisualStudioでは
branchの管理を利用してbranchに対する操作を行います。(GUIの場合。)
currentのlocal branchを基準にして操作を行っていくことになるため、rebaseやcherry pick、merge等、作用させたいworking branchに切り替えておくとよい。
rebaseを行う
working branchの分岐元としてrebaseしたいbranchを選択してコンテキストメニューから リベースする
を選択する。
ここで、一つ注意なのは、git のrebaseは、大体force-pushとセットの業になりがちですが、VisualStudioはforce-pushがdefaultだと許可されていないため、設定を変更してあげる必要がある。
恐らくrebaseを
VisualStudio 2022の
ツール => オプション => ソース管理 > Gitグローバル設定
内に
プッシュを有効にする --force-with-lease
チェックボックスがあるので有効にすることで、force-pushが可能になる。
失敗したときにforce-pushが出るようになる(上記設定がoffの場合はforce-pushではなくpullが表示される。)