Permalink
Commits on Oct 8, 2017
  1. Escape potential spaces in file URLs

    sorbits committed Oct 8, 2017
    If the Git bundle is checked out to Application Support then TM_BUNDLE_SUPPORT will contain a space.
    
    Not escaping spaces in file URLs seems to have worked in the past (with WebKit) but escaping them is the right thing to do, and it does not work in macOS 10.12.
Commits on Aug 17, 2017
  1. Make `git blame` always use 8 digit refs

    noniq committed Aug 9, 2017
    Because `Scm::Git#short_rev` (as well as `ApplicationHelper#short_rev`) always produce 8 digit refs, we need the output of `git blame` to use the same length, otherwise clicking on a (short) revision in the blame window fails to select the appropriate revision from the select at the top. Fixes #46
    
    Note that we have to specify `abbrev=7` to actually get 8 digit revisions (see man page excerpt below).
    
    Long explanation: In some cases / repositories, `git blame` seems to use longer refs by default. I’m not sure why, as the man page (git 2.13.2) explicitly states that the default is 8 (7+1) digits:
    
    ```
      --abbrev=<n>
         Instead of using the default 7+1 hexadecimal digits as the abbreviated object name, use <n>+1 digits. Note that 1
         column is used for a caret to mark the boundary commit.
    ```
    
    I suspect that this description is incorrect and that the default value is instead taken from `core.abbrev`. The man page for git-config says about this setting:
    
    ```
    If unspecified or set to "auto", an appropriate value is computed based on the approximate number of packed objects in your repository, which hopefully is enough for abbreviated object names to stay unique for some time.
    ```
Commits on Aug 9, 2017
  1. Fix annotate_controller_spec

    noniq committed Aug 9, 2017
    This broke in “6bb8956 Follow moved files in Annotate/Blame history”.
    
    Note that even this fixed spec still fails until “c01e5db Support positive and negative timezone offset”.
  2. Fix remote_controller_spec

    noniq committed Aug 9, 2017
    This broke in “7134197 Fix bug in parsing remote branch name during git pull.”
Commits on Mar 29, 2017
Commits on Jun 24, 2016
  1. Allow a commit summary of up to 72 characters before marking it invalid

    sorbits committed Jun 24, 2016
    From ‘git help commit’ the recommendation is simply to make it ‘less than 50 characters’ which we still use as the limit for marking it as deprecated.
    
    I think GitHub used to truncate at 65 characters but currently they truncate at 72 which is a commonly used value for hard wrapping, so it makes sense for us to use this as well.
Commits on May 1, 2016
  1. Fix error when deleting local branch containing slash character

    Arthur Rimbun authored and sorbits committed Apr 30, 2016
    This fixes issue #40
Commits on Apr 27, 2016
  1. Fix bug in parsing remote branch name during git pull.

    Arthur Rimbun authored and sorbits committed Apr 19, 2016
Commits on Oct 31, 2015
  1. Add support for automatically continue rebase after commit

    jacob-carlborg committed Oct 25, 2015
    Requires TextMate 2.0-beta.8.2
Commits on Jun 11, 2015
Commits on Nov 20, 2014
  1. Switch to using 'Hair Space' for menu selection control

    infininight committed Nov 20, 2014
    This changes the previously zero-width whitespace character used to control the menu item selected when typing a C with the menu open. The previous workaround became very visible on Yosemite, a hair space isn't absolutely invisible but almost so.
Commits on Sep 19, 2014
  1. Don't open revisions in TextMate asynchronously

    rdwampler committed Sep 18, 2014
    Previously, we would wait on TextMate to close before cleaning up the temporary file; however, we may want to avoid this since in the future TextMate may be able kill the process (before closing) and therefore leave behind the file. Also, let's use `TextMate.detach` instead of just `fork` to ensure we detach.
    
    This resolves an issue reported on the TextMate mailing list (http://lists.macromates.com/textmate/2014-September/037756.html).
Commits on Aug 23, 2014
Commits on Aug 19, 2014
  1. Add missing space to annotation matcher

    kaiwood committed Aug 19, 2014
    There is 1 additional space in the annotation format between
    the line number element and the parsed line. Without this,
    the output in the HTML popup for the blame indents 1 space to the
    right.
  2. Refactor annotation parser

    kaiwood committed Aug 19, 2014
    After #27, the old parse_annotation method was dead code
    nowhere used. This commit removes the dead part and renames
    the new method to the previous name, as it makes more sense
    and specs point to it.
Commits on Aug 18, 2014
  1. Support positive and negative timezone offset

    gdsmith committed Aug 18, 2014
    Currently breaks on positive timezone
  2. Follow moved files in Annotate/Blame history

    Cina Saffary authored and infininight committed May 21, 2014
Commits on Jun 18, 2014
  1. Point to ruby 1.8 shim

    infininight committed Jun 18, 2014
    Using a shim allows us to catch when 1.8 of ruby is not present and provide other options.
    
    #ignore
Commits on Apr 18, 2014
  1. Include file name in commit window actions (revert and delete)

    sorbits committed Apr 13, 2014
    Requires v2.0-alpha.9533
Commits on Apr 16, 2014
  1. Refactor and update specs for PartialCommitWorker

    rdwampler authored and infininight committed Apr 14, 2014
    I wanted to include some additional specs with the new logic around amending, but ended up refactoring and adding more specs overall.
  2. When amending auto populate the commit window with last commit message

    rdwampler authored and infininight committed Apr 11, 2014
    Since we auto populate the textview with the last commit message, we eliminate the need to include the "-- update commit message --" item. This item was used to inform the bundle if the user intended to update the commit message (check) or just use the previous message (uncheck).
    
    So now when amending a commit, the commit window will show the last commit message in the textview and a list of potential files only if necessary (i.e., the table view will be empty in situations where the user wanted just to edit the commit message). This behavior is more consistent with the way amending a commit works when running "git commit --amend" from the command line.
    
    Also, we now check to see if there is nothing to amend (i.e., it is the initial commit).
  3. Add API to suppress/unsuppress (html) output

    rdwampler authored and infininight committed Apr 14, 2014
    This is useful when we would like to discard and not show any potential (html) output that may have been generated up to that point (e.g., canceling an action).
    
    Note that all output will be suppressed until "unsupress_output" is called. I.e., calling "flush" will not show the current output buffer.
Commits on Apr 11, 2014
  1. Update README

    infininight committed Apr 11, 2014
    #ignore
  2. Remove in favor of commit history

    infininight committed Apr 11, 2014
    #ignore
  3. Revert "Fix for the diff action in the commit window"

    sorbits committed Apr 11, 2014
    This reverts commit 12c87d5.
  4. Running diff from commit window will now show changes since HEAD

    sorbits committed Apr 11, 2014
    By default, running “git diff” shows local changes that have not yet been staged, so if the user had already added (a version of) the file to the staging area, the diff button would only show changes done since that, which is misleading (as we commit to HEAD not the staging area).
    
    A minor issue exists for newly initialized repositories without a HEAD to diff against, here the diff command actually fails, but we ignore the return code and show a blank diff.
Commits on Apr 10, 2014
  1. Only show output window after closing commit window

    rdwampler authored and infininight committed Apr 8, 2014
    When the commit window was a separate program and required siginificant time to launch, it made since to initially send some kind of information to the users via the output window. However, now that the commit window runs as part of the Textmate, it may be a better user experience to delay output until after the commit window is closed.