We used to use NSObjects, which was really expensive, because for each commit
as many as 100 graphlines can be created. By preallocating them and not
using NSObjects in general, we gain a massive speedup
This produces cleaner code and is also significantly faster
than the old obj-c code: linux-2.6 goes from ~8 seconds
to ~6 seconds.
Using the c++ code allows us to do easy optimizations
This adds a new target 'SpeedTest', which just loads in a repository
and displays how long it takes to load the revision. This is handy for
testing the speed of the revwalking mechanism
This merges functionality that was previously stored in the
combination of PBGitCommitController / PBChangedFile to a
dedicated controller, PBGitIndexController.
This allows to read in arbitrary blobs from the repository.
For more information, see the CallingFromWebKit.txt
document in the Documentation/ directory.
This changes the HTML part of GitX to be more consistent -- we
now use a "views" directory where every web view has it's own
directory.
Furthermore, GitX-wide Javascript is added in the "lib" directory.
The same is true for CSS in the "css" directory. Every view can
have its own custom CSS and JS, and those are put in the views
directory (without JS or CSS prefix directories).
This is in accordance with the recent tendency to move all objects
related to a view in that folder (rather than only objects that have an
actual meaning in the Git context)
This allows you to do something like
gitx --diff
to display a diff similar to 'git diff', but with GitX prettification.
It accepts all git diff parameters, so you can do something like
gitx --diff HEAD~10
to show the diff compared to the last 10 commits. Or, you can something like
git diff | gitx
to pipe anything that produces a diff to GitX
Since Git recommends to use 50 characters in the first line of a commit
message, this adds a vertical line to the commit message view to show where
the 50 char limit is.
[PB: This preference can be changed using a user default -- for now we don't
have a preference pane yet, so this is hidden.]
This introduces the PBGitConfig class. It is KVC compliant as far
as I can see, in that you can actually bind to it in IB and use
ValueForKeyPath to retrieve values. It currently only handles
strings; it should be possible to add functions to process
booleans and numbers to it.
* insta-decorate:
Add framework to support removing refs
Show refs in HTML view
Allow copy and pasting of web source by pressing 'c'
Refactor cellInfo structure
Only decorate if we need to
Multithread test
Add objective c diff header
Conflicts:
GitX.xcodeproj/project.pbxproj