Commit Graph

987 Commits

Author SHA1 Message Date
Nathan Kinsinger 515b66f09a Fix memory leaks 2010-11-14 17:58:48 -07:00
German Laullon cad928126e merger brotherbard:experimetal 2010-09-24 10:25:12 -07:00
German Laullon a78a2c238c blame cosmetics
save the html for debug and CSS edit
2010-09-24 10:17:04 -07:00
Nathan Kinsinger 59c4983b51 Bugfix: only exit the handleSTDINDiff() if there is an actual diff 2010-09-20 22:36:06 -06:00
Nathan Kinsinger d00dbe42b3 Always pull all tracking branches from the remote
'git pull remote branch' will not update the remote's tracking branches, only the selected local branch. It may not be readily apparent that this happened. So remove the cases where GitX would pull just a single branch and always pull all the tracking branches.

The current checked out branch will still be updated as normal.
2010-09-19 22:51:14 -06:00
Nathan Kinsinger e388434a49 When creating a tracking branch pre-fill the branch name in the create branch sheet 2010-09-19 22:49:44 -06:00
Nathan Kinsinger 929f9fc0f5 Show the branch that will be tracked when creating a tracking branch 2010-09-19 22:49:37 -06:00
Nathan Kinsinger 6f83f2382c Bugfix: Rebasing the head ref
Only use the ref being rebased onto otherwise git will create a detached HEAD.
2010-09-19 14:33:33 -06:00
German Laullon cbf7cd3fbf cosmetic 2010-09-19 13:18:40 -07:00
German Laullon 6cf9cc13c8 SyntaxHighlighter 3.0.83 2010-09-19 13:01:26 -07:00
German Laullon bcee4aa91e html and code parse errors... 2010-09-19 12:17:18 -07:00
Nathan Kinsinger 9a9de9577c Bugfix: crasher on 10.5 due to webkit and the <button> element
Something in webkit doesn't like the button html element nor the -webkit-appearance: button css tag. Ends up crashing in one of various WebCore::ThemeMac::paint functions.

This would crash for anyone on 10.5 with the Gist it button enabled (which it is by default so that means anyone who ran it for the first time).

Changing the button back to the way it was before SHA:b557d6b5c6e675216d340d20833f39d0096b7ccc
2010-09-18 19:17:12 -06:00
German Laullon 6d564bb463 In Xcode put the folder for MGScopeBar in the Aux folder 2010-09-18 11:20:45 -07:00
German Laullon a7faf4f06a Remove the Quick Look button from the upper history toolbar and put it in the file list's bar 2010-09-18 11:20:22 -07:00
German Laullon 3a25496020 log format use %aN for the author name so that git uses the names from .mailmap 2010-09-18 11:19:29 -07:00
German Laullon 3f4c435d5f blame command should be "blame -p SHA -- filename" 2010-09-18 11:18:57 -07:00
German Laullon d1298a6c57 remove the "author" and "summary" labels 2010-09-18 11:18:21 -07:00
Nathan Kinsinger 3933744ba9 Merge remote branch 'refs/remotes/koraktor/no-verify' into experimental 2010-09-18 11:28:02 -06:00
Johannes Gilger 5194d5c5c9 History: Show author/committer according to .mailmap
This does not affect the display of the diff, since it is done with git
show --pretty=raw.

Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
2010-09-17 23:47:17 -06:00
Johannes Gilger 95b48779e8 Diff-View: Honor whitespace preference
This honors the preferences for showing differences in whitespacing when
using diff between single revisions/branches.

Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
2010-09-17 23:47:02 -06:00
Johannes Gilger f2cf438179 History-View: Clear list of files on showDiff
This clears the list of files before redrawing the showDiff method.

Fixes Lighthouse ticket #263

Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
2010-09-17 23:46:12 -06:00
Johannes Gilger 2852ecbf01 History: Correctly wrap lots of tags
When there are many tags in a commit we want them to wrap.

This fixes lighthouse ticket #220.

Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
2010-09-17 23:46:01 -06:00
Nathan Kinsinger f4a6d3fe0b Set the working directory for arguments sent from the cli
This allows running the gitx cli in a subdirectory and specifying file paths in that directory without having to type out the full path.
2010-09-17 23:45:19 -06:00
German Laullon 1a4a179e9a History 2010-09-16 22:54:28 -07:00
German Laullon 9200d3e310 blame 2010-09-15 17:00:50 -07:00
German Laullon 84ea632031 NGScopeBar 2010-09-15 17:00:07 -07:00
German Laullon da97c25a6a initial highlighter file view 2010-09-14 20:38:58 -07:00
Sebastian Staudt 21d1f3989f Added a dialog for failing commit hooks
This enables the user to force a commit (i.e. --no-verify) when either pre-commit or
commit-msg hook fails.
2010-09-13 20:25:42 +02:00
Sebastian Staudt ed833164d9 Also display output of commit-msg hook 2010-09-13 09:16:49 +02:00
Joshua Bleecher Snyder 8637a21c3b Display output of pre-commit hook 2010-09-13 09:16:49 +02:00
Nathan Kinsinger 8591effc91 Bugfix: include missing scripting method definitions 2010-09-12 22:28:53 -06:00
Nathan Kinsinger 5ddbcd18ef Disable deleting and pushing the detached HEAD 2010-09-12 20:39:47 -06:00
Nathan Kinsinger 8bb1173942 Allow the stage view's context slider to move from 0 to 10 2010-09-12 19:33:05 -06:00
Nathan Kinsinger c605b74476 Add a File Path search mode
Highlights any commit that touches a file.

The "Show history of file" context menu item will now set the path search instead of creating a rev specifier.
2010-09-12 19:33:01 -06:00
Felix Holmgren d77d85b807 Make the context slider work again 2010-09-12 19:32:58 -06:00
Nathan Kinsinger 18725fdd65 Prevent drag and drop of tags and remote branches
Moving an annotated tag would convert it to a lightweight tag and lose the tags message.

Given that tags are meant to represent a fixed point in the history and remote branches represent the state of the remote I'm disabling moving them.
2010-09-12 19:32:53 -06:00
Nathan Kinsinger b28afa1644 Add the contextual menu to the other columns of the commit list
Now all the columns have the menu for the commit, not just the subject column.
2010-09-12 19:32:50 -06:00
Nathan Kinsinger e56ca103ca Add search commands to the gitx cli
-s or --search= for searching in subject, author or SHA
-S or --Search= for git's pickaxe string matching
-r or --regex= for git's pickaxe regex matching
2010-09-12 19:32:47 -06:00
Nathan Kinsinger 71cdb0dbe0 Add search modes for git pickaxe
Add two new search modes to search the commits for strings that were added or removed in a commit.
    - match by string or an extended POSIX regex (see man git-log -S<string> and --pickaxe-regex)
    - include the modes in the search menu
    - store the current mode in user defaults
    - show progress indicator when search takes time
2010-09-12 19:32:44 -06:00
Nathan Kinsinger 62aa99b761 Add a recent searches menu to the search field 2010-09-12 19:32:40 -06:00
Nathan Kinsinger 4fad6b60a3 Improve search UI
Previously searching would filter the commits in the commit tableview to only show the commits that matched the search. However the context of where those commits exist in the history is lost.

With this patch all the commits are shown but the commits that match the search are highlighted with a light blue background. In addition there is a forward/back button to step through the matches.

A new search controller:
    - keeps track of the matching results
    - finds the next or previous result
    - displays the number of matches found or "Not found"
    - shows/hides the # of matches text and the next/last stepper button
    - shows a small bezel style window with a rewind icon indicating that the selection has cycled (pressing next when at the last match or previous when at the first)
    - sets up the search predicate which covers Subject, Author and SHA (previously this was three different searches)
    - stores search results in an NSIndexSet to make finding if a row is in the set faster (needed at drawing time)

Highlighting of search result rows is done in PBCommitList -drawRow:clipRect:

PBGitTextFieldCell is a subclass of NSTextFieldCell that disables the cell's selection highlighting.

Supporting Find Next and Find Previous (cmd-g and cmd-shift-g) menu commands required changing the action method of the menu items because NSTextFields (seem to) actively disable items in the Find menu.

rewindImage.pdf created by Nathan Kinsinger
2010-09-12 19:32:36 -06:00
Nathan Kinsinger 80596add94 Improved sidebar icons for Branch, Remote Branch and Tags
Icons by Thorsten Seitz <thorsten@portableinnovations.de>
2010-09-12 19:32:31 -06:00
Nathan Kinsinger 17f50e3f7e Add --init and --clone to gitx CLI and Applescript
Allows creating repositories from the command line, Applescript, or the scripting bridge. These are basic commands, if you need to use commandline options then use git itself.
2010-09-12 19:32:26 -06:00
Nathan Kinsinger b9232721d0 Add "--git-dir=" to gitx CLI
Allows specifying a repository in a particular location for the gitx operation.
2010-09-12 19:32:23 -06:00
Nathan Kinsinger e60bb3226c Refactor the gitx CLI to use apple events and the scripting bridge
Sending the arguments with the openURL:... message allows the repository document to modify it's UI without the UI flashing between states as it opens.

Covers all the existing functionality of the CLI, but modifies:
    - "--all" "--local" "--branch" change the branch filter
    - cleaned up the usage (help) text and added info on missing commands
    - looks up the full ref name of refs so the name of a branch or tag can be entered (the user can enter "master" instead of "refs/heads/master")

Modified the History Controller to watch for and react to branch filter changes.

The GitX.h file is generated by the 'sdp' tool in a run script build phase called 'Generate Scripting Bridge Header' based on the content of GitX.sdef. It is used by the Scripting Bridge so that other apps (in this case the gitx CLI) can call Applescript commands on GitX in objective-c.
2010-09-12 19:32:19 -06:00
Nathan Kinsinger beaa591b53 Include the CFBundleGitVersion in the version command of the CLI
CFBundleGitVersion has the git description information in it.
2010-09-12 19:32:15 -06:00
Nathan Kinsinger 88b2983a4c Add a Short SHA column to the commit list
Shows only the first 10 characters of the full SHA hash so as to take up less room. Show or hide it using the contextual menu for the table header.
2010-09-12 19:32:11 -06:00
Nathan Kinsinger 2bdfaa096b Fix sorting of the subject column.
Was broken back in 4e4ffcc.
2010-09-12 19:32:07 -06:00
Nathan Kinsinger f8e63e2c9c Remove the isReachable test for gravatar.com
If there is no network connection then the reachability test will take the system default time (90 seconds I think?) to time out. During this time the UI is blocked (spinning beach ball).

The test was being done even if gravatar use was turned off. It doesn't really matter if the site is unreachable, the image will not load but that's not a big deal.
2010-09-12 19:32:04 -06:00
Nathan Kinsinger e281c983d6 Add a relative date column to the commits list table view
Shows a relative time ("x minutes ago", "Yesterday", "x days ago", "x years ago").
    - Sort the column on the commit's date and not on the string value
    - Use a custom formatter connected to the cell in the XIB
    - Show or hide using the contextual menu for the table header
2010-09-12 19:31:40 -06:00