I would like to do something like this:
open -a SourceTree puppetlabs-apache 8340107...97b5594ffd3b7fec169f807d3dee07cb094982a5
If you want to use the command line, you should just use the git client. SourceTree is just a UI wrapper to a git command line client anyway.
git diff 8340107 97b5594ffd3b7fec169f807d3dee07cb094982a5
Disagree big time. Contrast gitextensions which provides a number of command-line entry points to it's gui. I can bring up it's merge tool, invoke graphical blame, log of a specific file, etc, all from command line. ditto TortoiseGit.
I'm overwhelmingly primarily a commandline dev but I don't want to view a blame via commandline, but it's usually easier for me to specify a path on the commandline
looks like sourcetree.exe /? provides some help, and there's a few commands status, log, filelog, commit, but it's pretty bare compared to gitextensions or tortoise
I don't understand your question. I'm trying to determine if I can invoke sourcetree from the command line and browse the changes between two commits. I do this currently with git on the command line but it's really tedious when you have an active project with a lot of committers.
A good example of this is when you are browsing down commits and you see a file diff and you would like to step sideways through changes on that file with log display.
I'd like be able to browse an active project between releases to see changes and the commit logs for each change. 'git diff branch..branch' is very file oriented. I will do a 'git diff --name-status branch1..branch1' sometimes.
I do this as well...
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
git lg -p branch1..branch2 and it's pretty good looking but it's not very usable on large numbers of changes.