1. 14 10月, 2008 1 次提交
    • A
      gitk: Enhance file encoding support · 09c7029d
      Alexander Gavrilov 提交于
      This allows the encoding to be specified for file contents and used
      when displaying files and diffs in the bottom-left pane.  When
      displaying diffs, the encoding for each diff hunk is that for the file
      that the diff hunk is from, so it can change through the course of the
      diff.
      
      The encoding for file contents is determined as follows:
      
      - File encoding defaults to the system encoding.
      - It can be overridden by setting the gui.encoding option.
      - Finally, the 'encoding' attribute is checked on
        per-file basis; it has the last word.
      
      Note: Since git-check-attr does not provide support for reading
      attributes from trees, attribute lookup is done using files from the
      working directory.
      
      This also extends the range of supported encoding names, adding
      ShiftJIS and Shift-JIS as aliases for Shift_JIS, and allowing
      cp-*, cp_*, ibm-*, ibm_*, jis-* and jis_* as aliases for cp*,
      ibm* and jis* respectively.
      
      This also fixes some bugs in handling of non-ASCII filenames.  Core
      git apparently supports only locale-encoded filenames, so processing
      is done using the system encoding.
      Signed-off-by: NAlexander Gavrilov <angavrilov@gmail.com>
      Tested-by: NJohannes Sixt <johannes.sixt@telecom.at>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      09c7029d
  2. 22 9月, 2008 3 次提交
  3. 26 8月, 2008 2 次提交
  4. 11 8月, 2008 1 次提交
  5. 04 8月, 2008 1 次提交
  6. 03 8月, 2008 1 次提交
  7. 31 7月, 2008 6 次提交
  8. 26 5月, 2008 1 次提交
    • P
      gitk: Handle detached heads better · c11ff120
      Paul Mackerras 提交于
      This draws the currently checked-out head with a yellow circle, as
      suggested by Linus Torvalds, and fixes various places in the code
      where we assumed that the current head always had a branch.  Now we
      can display the fake commits for local changes on a detached head.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      c11ff120
  9. 22 5月, 2008 1 次提交
  10. 20 5月, 2008 1 次提交
    • P
      gitk: Fix bug where current row number display stops working · 94b4a69f
      Paul Mackerras 提交于
      The display of the current row number would stop working if the user
      clicked on a line, or if selectedline got unset for any other reason,
      because the trace on it got lost when it was unselected.  This fixes
      it by changing the places that unset selectedline to set it to the
      empty string instead, and the places that tested for it being set or
      unset to compare it with the empty string.  Thus it never gets unset
      now.  This actually simplified the code in a few places since it can
      be compared for equality with a row number now without first testing
      if it is set.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      94b4a69f
  11. 19 5月, 2008 2 次提交
  12. 12 5月, 2008 1 次提交
  13. 11 5月, 2008 3 次提交
    • P
      gitk: Show current row number and total number of rows · 6df7403a
      Paul Mackerras 提交于
      This adds a couple of fields in the bar just below the upper panes
      that show the row number of the currently selected commit, and how
      many rows are displayed in total.  The latter increments as commits
      are read in, and thus functions to show that progress is being made.
      This therefore also removes the code that showed progress using a
      green oscillating bar in the progress bar window (which some people
      disliked).
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      6df7403a
    • P
      Merge branch 'master' into dev · e8a0c69b
      Paul Mackerras 提交于
      e8a0c69b
    • T
      gitk: Allow users to view diffs in external diff viewer · 314f5de1
      Thomas Arcila 提交于
      This allows gitk to run an external diff viewer such as meld.
      
      Right-click on a file in the file list view gives "External diff"
      popup menu entry, which launches the selected external diff tool.
      The menu entry is only active in "Patch" mode, not in "Tree" mode.
      
      The program to run to display the diff is configurable through
      Edit/Preference/External diff tool.  The program is run with two
      arguments, being the names of files containing the two versions to
      diff.  Gitk will create temporary directories called
      .gitk-tmp.<pid>/<n> to place these files in, and remove them when
      it's finished.
      
      If the file doesn't exist in one or other revision, gitk will supply
      /dev/null as the name of the file on that side of the diff.  This may
      need to be adjusted for Windows or MacOS.
      
      [paulus@samba.org - cleaned up and rewrote some parts of the patch.]
      Signed-off-by: NThomas Arcila <thomas.arcila@gmail.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      314f5de1
  14. 10 5月, 2008 1 次提交
    • P
      gitk: Synchronize highlighting in file view for 'f' and 'b' commands · f4c54b3c
      Paul Mackerras 提交于
      This is based on a patch by Eric Raible <raible@gmail.com>, but does
      things a bit more simply.
      
      Previously, 'b', backspace, and delete all did the same thing.
      This changes 'b' to perform the inverse of 'f'.  And both of
      them now highlight the filename of the currently diff.
      
      This makes it easier to review and navigate the diffs associated
      with a particular commit using only f, b, and space because the
      filename of the currently display diff will be dynamically
      highlighted.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      f4c54b3c
  15. 09 5月, 2008 1 次提交
    • P
      gitk: Make updates go faster · ee66e089
      Paul Mackerras 提交于
      This goes back to the method of doing updates where we translate the
      revisions we're given to SHA1 ids and then remove the ones we've asked
      for before or that we've already come across.  This speeds up updates
      enormously in most cases since it means git log doesn't have to traverse
      large parts of the tree.  We used to do this, but it had bugs, and commit
      468bcaed (gitk: Don't filter view
      arguments through git rev-parse) went to the slower method to avoid the
      bugs.
      
      In order to do this properly, we have to parse the command line and
      understand all the flag arguments.  So this adds a parser that checks
      all the flag arguments.  If there are any we don't know about, we
      disable the optimization and just pass the whole lot to git log
      (except for -d/--date-order, which we remove from the list).
      
      With this we can then use git rev-parse on the non-flag arguments to
      work out exactly what SHA1 ids are included and excluded in the list,
      which then enables us to ask for just the new ones when updating.
      One wrinkle is that we have to turn symmetric diff arguments (of the
      form a...b) back into symmetric diff form so that --left-right still
      works, as git rev parse turns a...b into a b ^merge_base(a,b).
      
      This also updates a couple of copyright notices.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      ee66e089
  16. 03 5月, 2008 3 次提交
  17. 02 5月, 2008 3 次提交
  18. 28 4月, 2008 1 次提交
    • P
      gitk: Fix handling of tree file list with special chars in names · f31fa2c0
      Paul Mackerras 提交于
      Alex Riesen pointed out that displaying a commit in 'tree' mode fails
      if some files have names with special characters such as '{' or '}' in
      them, due to the fact that we treat the line returned from git ls-tree
      as a Tcl list at one point.
      
      This fixes it by doing what I originally intended but didn't quite
      get right.  We split the line from git ls-tree at the first tab and
      treat the part before the tab as a list (which is OK since it doesn't
      have special characters in it) and the part after the tab as the
      filename.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      f31fa2c0
  19. 26 4月, 2008 1 次提交
    • P
      gitk: Reorganize processing of arguments for git log · 3ed31a81
      Paul Mackerras 提交于
      This moves the scanning of the argument list for each view into a
      new function, parseviewargs, which is called from start_rev_list.
      This also makes the date mode and the merge mode be per-view rather
      than global.  In merge mode, we work out the list of relevant files
      in a new function called from start_rev_list, so it will be updated
      on File->Reload.  Plus we now do that after running the argscmd, so
      if we have one and it generates a -d or --merge option they will be
      correctly handled now.
      
      The other thing this does is to make errors detected in start_rev_list
      not be fatal.  Now instead of doing exit 1 we just pop up and error
      window and put "No commits selected" in the graph pane.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      3ed31a81
  20. 06 4月, 2008 1 次提交
    • G
      gitk: Fix changing colors through Edit->Preferences · 80dd7b44
      Gerrit Pape 提交于
      With tcl/tk8.5 the lset command seems to behave differently.  When
      changing the background color through Edit->Preferences, the changes
      are applied, but new dialogs, such as View->New view... barf with
      
       Error: unknown color name "{#ffffff}"
      
      Additionally when closing gitk, and starting it up again, a bad value
      has been saved to ~/.gitk, preventing gitk from running properly; it
      fails with
      
       Error in startup script: unknown color name "{#ffffff}"
       ...
      
      This commit fixes the problem by changing the color dialogs to pass
      the empty string {} as the list index to choosecolor.  This causes
      the lset and lindex commands used by choosecolor to use and set the
      whole variable (bgcolor, fgcolor or selectbgcolor) rather than
      treating them as a 1-element list.  Tested with tcl/tk8.4 and 8.5.
      
      Dmitry Potapov reported this problem through
       http://bugs.debian.org/472615Signed-off-by: NGerrit Pape <pape@smarden.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      80dd7b44
  21. 14 3月, 2008 2 次提交
  22. 11 3月, 2008 3 次提交