This fixes ticket #132, where setting color.ui = always in the gitconfig
caused GitX to received colorized output for "git show", thereby
destroying the diff-output.
Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
Resulting from the last change to Info.plist in 3e21d041ef we were no
longer able to open directories called <foo>.<bar> wheren bar != git.
Using this code allows us to open all directories again and also to
drag-and-drop to the dock.
Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
This returns not only the name of the git-dir but also the current
branch (or detached HEAD if no local branch is checked out).
When reloading the refs (which also happens when checking-out using
GitX), the displayName-method is called, updating the window-title.
Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
This fixes ticket #132, where setting color.ui = always in the gitconfig
caused GitX to received colorized output for "git show", thereby
destroying the diff-output.
Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
Resulting from the last change to Info.plist in 3e21d041ef we were no
longer able to open directories called <foo>.<bar> wheren bar != git.
Using this code allows us to open all directories again and also to
drag-and-drop to the dock.
Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
This fixes ticket #123, it restricts the branch-selector in history-view
to a maximum-height of 25pixels, which is the height of the button to
select history/commit-mode.
Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
The encoding used to write a new .gitignore was based on an
uninitialized value. Fix this by using UTF-8 as the default.
Found by the clang static analyzer.
* stable:
Fix many gcc 4.2 compiler warnings
GitX.xcodeproj: Quote paths in custom shell scripts
Fix compilation with GCC 4.2
IndexController: Temporarily stop tracking when (un)staging
IndexController: Add methods to stop tracking the Index
ChangesTableView: Remove warning by casting to correct class
Conflicts:
PBGitCommitController.m
Based on a patch by Faustino Osuna <enrique.osuna@gmail.com>
A failure of the pre-commit hook (a non-zero
result from the hook) will cause the commit to
abort. A failure of the post-commit hook has no
effect of the rest of the operation, however, it
is noted in the user interface.
This fixes Lighthouse#50
This speeds up the diff display by using DOM manipulation instead
of .innerHTML. Apparently incremental .innerHTML is really expensive
compared to DOM manipulation (which is expensive compared to a single .innerHTML=).
For example, the v0.2.1 commit, which introduces Sparkle, now loads in 70ms
rather than 230.
This uses the new way to stop tracking the index when
adding files. This can be noticed when staging more than
one file, as the tables might have to refresh dozens
of times.
* stable:
Site: Create directory if it doesn't exist
Project: Discover both long and short build number from git
Site: Automatically read the latest version from the Release Notes
Add releasenotes for 0.6.2
PBRefController: Ask for confirmation when deleting tags/branches
ApplicationController: Use a debug symbol that actually works
Site/Rakefile: clean up code
Site: Allow automagic generation of sparkle feed
Site: Automagically generate release notes
Move site template to subdir
Split up release notes into individual files
I'm not sure if we should use the release notes here or rather
use the tags, but this follows other information on the site
like the "Release History", so at least it's internally consistent.
Show a very simple user-dialog when trying to delete a branch or a
tag.
This satisfies ticket #115.
Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
* stable:
Make confirmation of Gists optional
Add more defaults for handling Gists
HistoryView: Confirm paste to Gist if github.user is unset
GitX: CFBuildVersion as x.x.x.xx
UserManual: Explain the concept of the Amend-button
This makes use of the rules that are explicit in the
preferences. By default, Gists are always private and there
will always be a confirmation message.
Both options can be changed from the preferences menu.
This patch relates to ticket #58. It adds a method which will ask for
confirmation when pasting to Gist as an anonymous user. Since users
which have github.user and github.token set can easily delete pasted
snippets no confirmation is needed for them.
Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
We used the whole output of git describe before, not realizing that
neither MacOS nor Sparkle are ok with alphabetic characters but instead
want monotonically increasing integers. So now we just take the major
version number appended with the number of commits since the last tag.
Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
We do this by preprocessing the Info.plist file
and adding a prefix header with the current revision
#define'd. This seems to be the most reliable way,
unfortunately
This should ship binaries with debugging symbols in them.
I'm not sure if there's a negative side effect somewhere,
but this should make parsing the crash logs a lot easier :)
When unstaging the last cached hunk of a file, the file remained in the
"Staged Changes" column, with the notice "This file has no more changes"
and the "Unstage"-button remaining in the diff-view.
This fixes this behaviour by correctly distinguishing files in the
files-array not only by filename but also by unstaged/cached status,
s.t. for a file with unstaged and cached changes, there are two entries
in the files-array.
Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
* commit '3e21d041efb95b6358c749e021bf5ddbcc05bcd7':
Info.plist: Make GitX open any file/folder on drop
diffHighlighter: Correctly match unified diff hunks
diffHighlighter: Fix indent-after-stagebutton bug