git difftool
左側と右側の両方に変更を加えたいと思います。
という名前のブランチに取り組んでいて、feature
インデントやスペルミスなどの外観上の問題を見つけて修正したとします。master
ただし、これらの変更は実装された機能の一部ではないため、最終的なマージの一部にしたくありません。
だから私が通常やっていることはcheckout -b small_fixes master
とgit difftool feature
です。次に、そのブランチのマイナーな変更をすべてインポートし、最終的にはgit rebase master && git branch -d small_fixes
.
今では との違いがはるかに少なくmaster
なりfeatures
、これらすべての違いは機能に厳密に関連しています。これにより、最終版の前に適切なコード レビューを行うことができますgit merge --squash feature
。
ここでの主な問題はgit difftool master
、左側に一時ファイルがあることです ( master
)。作業コピーは変更できますが、マスターは変更できません。したがって、両側を変更したい場合は、2 つの異なる操作が必要です。
変更を一時ファイルに保存してからマスターブランチに保存できるツールがあるかどうか疑問に思っていますcommit
。stash
この状況はgit difftool --dir-diff
、両側が一時ファイルである場合にも発生することに注意してください。
問題はdifftool
、両側で変更を行い、これらの変更を同時にコミットするにはどうすればよいかということです。