Junio C Hamano <gitster@xxxxxxxxx> 于2021年2月9日周二 上午7:34写道: > > David Aguilar <davvid@xxxxxxxxx> writes: > > > What if instead of global state, maybe the user could specify a path > > that difftool could skip forward to? For example, we could teach > > difftool to resume by telling it where we last left off: > > > > git difftool --resume-from=foo/bar099.txt > > > > Then we don't need the global counter state file? > > Does it have to be the second and subsequent invocation to pass the > new "resume-from" option? As we do not have "global" state, I would > presume that we do not even know if it is the first invocation, so > perhaps a better name would be "--start-from=$pathname"? > Thank you for your thinking, I agree with your point of view. As you said before: an accurate file name may be more suitable for users than `possible last file`. However, without the support of the global `difftool-save-point`, it may not be possible to know the last exit point of the user. Even if the global state is allowed, it may need to do more work to avoid the competition for the global state under multiple processes. So "--start-from=$pathname" is more suitable to provide users with a way to quickly index to specified files. Then I shift the front and start thinking about how to realize it! :) > > Finally, I'm going to plug what I believe to be the right tool for the > > job here. Have you tried git cola?[1] Difftool is tightly > > integrated, and the UI is such that you can trivially choose any of > > the modified/staged files and difftool them by using the Ctrl-d > > hotkey. > > > > https://github.com/git-cola/git-cola/ > > > > Cola is purpose-built for driving difftool, and for interactive > > staging, so not mentioning it in the context of wanting a better UI > > for difftool would be a disservice to difftool users. > > ;-) Thanks again!