ドキュメントの対象ユーザ
-
SourceTree By Atlassianを使っている、かつ、コマンドラインは苦手(≒ターミナルでgitコマンド打ちたくない)
-
元(例master)から分岐させたブランチ(例development)で作業して、 masterをリベースせずにコミットしてmasterにプルリクしたらところコンフリクトが発生 した(橙色の三角形)
-
コードをどう直せばいいかわかるけど、SourceTree上での手順がわからないので知りたい
やること概要
- SourceTreeでリベースして強制プッシュ(タイトルまんま)
手順
SourceTreeでリベース
コンフリクトを解消
リベースの続行
強制プッシュ
-
強制プッシュの準備をする。
SourceTreeはデフォルトでは強制プッシュが無効なので、環境設定→全般を開いて __強制プッシュを許可__にチェックを入れる
-
強制プッシュを実施する
プッシュを行う。途中のダイアログの左下に 強制プッシュ にチェックボックスが現れている。これにチェックを入れてOKを押して強制プッシュをする。強制プッシュを確認ダイアログが出てもそのままOKですすめる。
Bitbuketでコンフリクトが解消されていることを確認する。
Bitbucketのdevelopmentブランチに接続して、コンフリクトが解消されたことを確認しましょう。
これで終わりです
備考
- 強制プッシュは慎重に行ってください。一人で更新を進めているブランチであれば最新が手元にあるため事故が起きても取り返しがつきますが、2人以上で更新をしているブランチでは最新が必ずしも手元にあるとは限らないため、強制プッシュにより問題が起きる可能性があります。
- 強制プッシュは使いたくないので、コミットする前はリベースするようこころがけましょう。
- Bitbuketでなくても、Githubでも同様だと思う。