[解決済み] SourceTree / gitのコンフリクトを対話的に(視覚的に)解決する方法
2022-03-05 11:58:38
質問
gitプロジェクトに(Windows)SourceTreeを使っています。私は、コマンドプロンプトまたはLinuxターミナルのいずれかでそれを行うことができます。
しかし、コンフリクトを対話的に、かつ視覚的に解決するいい方法はないものかと考えています。例えば、pullがコンフリクトを検出したら、GUIベースのコンフリクトツール(例:P4Merge)をポップアップ表示させるとか。それは可能ですか?
いつも手作業でコンフリクト解消しているので、苦痛でしかない。
これは、例えば、git
pull
のメッセージを、SourceTreeから取得します。
git -c diff.mnemonicprefix=false -c core.quotepath=false pull --no-commit origin master
From W:\repo\
* branch master -> FETCH_HEAD
Updating 33c07bf..41e0249
error: Your local changes to the following files would be overwritten by merge:
foo.cpp
goo.cpp
goo.hpp
Please, commit your changes or stash them before you can merge.
Aborting
Completed with errors, see above.
解決方法は?
SourceTreeから、Tools->Optionsをクリックします。 そして、"General"タブで、SourceTreeがGit設定ファイルを変更することを許可するボックスにチェックが入っていることを確認します。
次に、quot;Diff" タブに切り替えます。 下半分のドロップダウンで、差分とマージを行うために使用する外部プログラムを選択します。 私は、以下のものをインストールしました。 KDiff3 で、十分気に入っています。 完了したら、OKをクリックします。
これで、マージがあったときに、「アクション」->「コンフリクトの解決」->「外部マージツールの起動」を実行できます。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] Git リポジトリを以前のコミットに戻すにはどうすればよいですか?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] Git で、ステージされていない変更を破棄するにはどうしたらいいですか?
-
[解決済み] Git リポジトリでのマージの衝突を解決するには?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】ローカルに変更があるにもかかわらず、git pushが「すべて最新」と言う
-
[解決済み】GitHub: クローンには成功したが、チェックアウトに失敗した
-
[解決済み】Git Extensions。Win32 エラー 487: cygwinのヒープ用に領域を確保できなかった、Win32エラー0
-
[解決済み】git push >> fatal: 設定されたプッシュ先がありません。
-
[解決済み] git: fatal: リモートリポジトリから読み取れませんでした。
-
[解決済み] ブラウンアウトの一環として、パスワード認証が一時的に無効になっています。代わりに個人用アクセストークンを使用してください[重複]。
-
[解決済み] GitBash | origin master - rejected (fetch first) | GitHub リポジトリにファイルがない。
-
[解決済み] Git エラー : 'upstream' は git リポジトリでないようです。
-
[解決済み] git rebase: "error: cannot stat 'file': パーミッションが拒否されました"
-
[解決済み] Gitのフォルダ構造で変更・追加されたファイルのみをエクスポートする機能