summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* git-svn: info --url [path]David D. Kilzer2007-11-213-3/+102
| | | | | | | | | | Return the svn URL for the given path, or return the svn repository URL if no path is given. Added 18 tests to t/t9119-git-svn-info.sh. Signed-off-by: David D. Kilzer <ddkilzer@kilzer.net> Acked-by: Eric Wong <normalperson@yhbt.net>
* git-svn info: implement info commandDavid D. Kilzer2007-11-213-0/+413
| | | | | | | | | | | | | Implement "git-svn info" for files and directories based on the "svn info" command. Note that the -r/--revision argument is not supported yet. Added 18 tests in t/t9119-git-svn-info.sh. [ew: small fix to work without arguments on all working directories] Signed-off-by: David D. Kilzer <ddkilzer@kilzer.net> Acked-by: Eric Wong <normalperson@yhbt.net>
* git-svn: extract reusable code into utility functionsDavid D. Kilzer2007-11-211-32/+64
| | | | | | | | | | | | | | | Extacted canonicalize_path() in the main package. Created new Git::SVN::Util package with an md5sum() function. A new package was created so that Digest::MD5 did not have to be loaded in the main package. Replaced code in the SVN::Git::Editor and SVN::Git::Fetcher packages with calls to md5sum(). Extracted the format_svn_date(), parse_git_date() and set_local_timezone() functions within the Git::SVN::Log package. Signed-off-by: David D. Kilzer <ddkilzer@kilzer.net> Acked-by: Eric Wong <normalperson@yhbt.net>
* t9106: fix a race condition that caused svn to miss modificationsEric Wong2007-11-211-0/+1
| | | | | | carbonated beverage noticed this test was occasionally failing. Signed-off-by: Eric Wong <normalperson@yhbt.net>
* Merge git://repo.or.cz/git-guiJunio C Hamano2007-11-2153-892/+16419
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://repo.or.cz/git-gui: (96 commits) git-gui 0.9.0 git-gui: Bind Meta-T for "Stage To Commit" menu action git-gui: Allow users to set font weights to bold git-gui: Update Japanese strings (part 2) git-gui: Update Japanese strings Updated russian translation of git-gui po2msg: actually output statistics po2msg: ignore untranslated messages po2msg: ignore entries marked with "fuzzy" git-gui: Protect against bad translation strings git-gui: Make sure we get errors from git-update-index More updates and corrections to the russian translation of git-gui Updated Russian translation. git-gui: Update German translation git-gui: Add more terms to glossary. git-gui: Paper bag fix the global config parsing git-gui: Honor a config.mak in git-gui's top level git-gui: Collapse $env(HOME) to ~/ in recent repositories on Windows git-gui: Support cloning Cygwin based work-dirs git-gui: Use proper Windows shortcuts instead of bat files ...
| * git-gui 0.9.0gitgui-0.9.0Shawn O. Pearce2007-11-211-1/+1
| | | | | | | | Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * git-gui: Bind Meta-T for "Stage To Commit" menu actionShawn O. Pearce2007-11-081-1/+6
| | | | | | | | | | | | Aaron Digulla suggested we bind Ctrl-T or Cmd-T to "Stage To Commit" menu action so it can be easily accessed from the keyboard. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * git-gui: Allow users to set font weights to boldShawn O. Pearce2007-11-011-1/+8
| | | | | | | | | | | | | | | | | | Previously we allowed users to tweak their font weight to be bold by setting it manually in their ~/.gitconfig prior to starting git-gui. This was broken in ae0754ac9a24afa2693246222fc078fe9c133b3a when Simon set the font weight to normal by default, overridding whatever we found from the ~/.gitconfig file. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * git-gui: Update Japanese strings (part 2)Junio C Hamano2007-11-011-1/+1
| | | | | | | | | | | | Resolve an earlier suggestion from Christian. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * git-gui: Update Japanese stringsしらいしななこ2007-11-011-144/+133
| | | | | | | | | | | | | | This updates the Japanese translation file. Signed-off-by: しらいしななこ <nanako3@bluebottle.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * Updated russian translation of git-guiAlex Riesen2007-11-011-224/+292
| | | | | | | | | | | | Fixed some spelling mistakes. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * po2msg: actually output statisticsJohannes Schindelin2007-11-011-2/+20
| | | | | | | | | | | | | | | | The "--statistics" option was ignored so far; no longer. Now we have a message similar to that of msgfmt. (Untranslated, though ;-) Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * po2msg: ignore untranslated messagesJohannes Schindelin2007-11-011-0/+3
| | | | | | | | | | | | | | Do not generate translations when the translated message is empty. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * po2msg: ignore entries marked with "fuzzy"Johannes Schindelin2007-11-011-2/+11
| | | | | | | | | | | | | | | | As Christian Stimming pointed out, entries which are "fuzzy" need to be checked by human translators, and cannot be used. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * git-gui: Protect against bad translation stringsShawn O. Pearce2007-10-261-4/+11
| | | | | | | | | | | | | | | | | | If a translation string uses a format character we don't have an argument for then it may throw an error when we attempt to format the translation. In this case switch back to the default format that comes with the program (aka the English translation). Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * Merge branch 'maint'Shawn O. Pearce2007-10-231-12/+53
| |\ | | | | | | | | | | | | | | | | | | | | | | | | * maint: git-gui: Make sure we get errors from git-update-index Conflicts: lib/index.tcl
| | * git-gui: Make sure we get errors from git-update-indexShawn O. Pearce2007-10-231-9/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm seeing a lot of silent failures from git-update-index on Windows and this is leaving the index.lock file intact, which means users are later unable to perform additional operations. When the index is locked behind our back and we are unable to use it we may need to allow the user to delete the index lock and try again. However our UI state is probably not currect as we have assumed that some changes were applied but none of them actually did. A rescan is the easiest (in code anyway) solution to correct our UI to show what the index really has (or doesn't have). Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | More updates and corrections to the russian translation of git-guiAlex Riesen2007-10-231-235/+127
| | | | | | | | | | | | | | | | | | | | | In particular many screw-ups after po regeneration were fixed. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | Updated Russian translation.Kirill2007-10-221-141/+190
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The most important changes are: - Git version cannot be determined... (lost in 57364320bf) - git-gui: fatal error Some changes need the second opinion (search for TOVERIFY), some changes are just copies (search for "carbon copy"). Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Update German translationChristian Stimming2007-10-202-220/+238
| | | | | | | | | | | | Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Add more terms to glossary.Christian Stimming2007-10-202-3/+8
| | | | | | | | | | | | Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | Merge branch 'maint'Shawn O. Pearce2007-10-203-3/+6
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * maint: git-gui: Don't display CR within console windows git-gui: Handle progress bars from newer gits git-gui: Correctly report failures from git-write-tree Conflicts: lib/commit.tcl lib/console.tcl
| * | git-gui: Paper bag fix the global config parsingShawn O. Pearce2007-10-171-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | git-config won't honor any options after --list. We must supply the --global option in front of --list if we really want to load the global configuration options. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Honor a config.mak in git-gui's top levelShawn O. Pearce2007-10-132-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | I keep forgetting to include TCLTK_PATH when I build git-gui on some systems. Placing that rule (among others) into a config.mak makes it easier to compile the application the same way every time. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Collapse $env(HOME) to ~/ in recent repositories on WindowsShawn O. Pearce2007-10-121-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apparently native Tcl/Tk on Windows is using \ as the return value from [file separator] but [file normalize] on that same system is using / rather than \ to represent a directory separator. I really think that is nuts, but its what is happening. So we can actually just hardcode our separator to / as all systems we support (Windows, Mac OS X, UNIX) use /. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Support cloning Cygwin based work-dirsShawn O. Pearce2007-10-121-7/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the user tries to clone a Git repository that is actually a workdir of another repository (by way of contrib git-new-workdir) then the contents of .git is a series of Windows .lnk files which Tcl can't read if this is a native Tcl process. To read the real objects directory we need to resolve the link to that location. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Use proper Windows shortcuts instead of bat filesShawn O. Pearce2007-10-124-35/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows its better to use a shortcut (.lnk file) over a batch script (.bat) as we can specify the icon file for the .lnk and thus have these git specific objects appear on the desktop with that git specific icon file. Unfortunately the authors of Tcl did not bless us with the APIs needed to create shortcuts from within Tcl. But Microsoft did give us Windows Scripting Host which allows us to execute some JavaScript that calls some sort of COM object that can operate on a .lnk file. We now build both Cygwin and non-Cygwin "desktop icons" as proper Windows .lnk files, using the "Start in" property of these files to indicate the working directory of the repository the user wants to launch. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Ensure copyright message is correctly read as UTF-8Shawn O. Pearce2007-10-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows using the native Tcl/Tk the copyright header is being read from the script using the system encoding, which may not be utf-8. This causes the multi-byte copyright symbol (which is actually encoded as utf-8) to read as two characters and not as a proper copyright symbol. Explicitly asking Tcl to read this sequence of bytes as utf-8 corrects the issue. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Bind n/c/o accelerators in repository chooserShawn O. Pearce2007-10-121-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows we need to actually setup binds for the accelerator keys, otherwise the OS doesn't respond to them when the user presses the key combinations. Apparently we automatically get these on Mac OS X when we configure the menu commands, but not on Windows. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Disable the text widget in the repository chooserShawn O. Pearce2007-10-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Although we are using a text widget here we really do not want the end-user to be able to modify the text it displays. So we need to disable it. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Fix bind errors when switching repository chooser panelsShawn O. Pearce2007-10-121-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | We need to remove any variable traces we may have installed when the panel is destroyed as the trace may attempt to use a widget that no longer exists on this panel. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Offer repository management features in menu barShawn O. Pearce2007-10-121-6/+49
| | | | | | | | | | | | | | | | | | | | | | | | When we show the repository chooser as the primary toplevel (".") we now offer the major choices not just on the window as hyperlinks but they also now are shown in the Repository menu, including the recent repository list. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Change repository browser radio buttons to hyperlinksShawn O. Pearce2007-10-121-27/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Making a user click twice to select which action they want to perform when starting git-gui is just wasting their time. Clicking once on a radio button and then clicking again on the "Next >" button is quite unnecessary. Since the recent repository list is shown as a list of hyperlinks we now offer the 3 basic startup actions as hyperlinks. Clicking on a link will immediately jump to the next UI panel, saving the user time as they don't need to click an additional button. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: offer a list of recent repositories on startupSteffen Prohaska2007-10-122-0/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If git-gui is started outside a work tree the repository chooser will offer a list of recently opened repositories. Clicking on any list entry directly opens the repository. The list of recently opened repositories is stored in the config as the multi-valued option gui.recentrepo. If the list grows beyond 10 entries it will be truncated by removing one of the older entries. Only repositories that are opened through the repository chooser will get added to the recent list. Repositories opened from the shell will not yet be added to the recent list, as users are likely to have a way to easily return to the same directory via their shell. [sp: This is actually a combined work from both Steffen and myself. Most of the ideas are Steffen's, as is the basic outline of the code, but any outstanding bugs are entirely my fault.] Signed-off-by: Steffen Prohaska <prohaska@zib.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Support LFs embedded in config file valuesShawn O. Pearce2007-10-121-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | Using the new --null option added to git-config in git 1.5.3 we can safely accept LFs that are embedded in configuration options. This does require a completely different configuration file parser then the pre 1.5.3 version as we are splitting on very different values. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Refactor git-config --list parsingShawn O. Pearce2007-10-121-21/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The parsing for the output of `git config --list` is the same for both the global options and the current repository's options so we can really just use the same parser between them. I'm currently just refactoring the parser so we can use a different one depending on the version of git available to us at runtime. My next change will add support for 1.5.3's --null option. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Move load_config procedure below git-version selectionShawn O. Pearce2007-10-121-45/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To better handle configuration options that contain LFs in their values we want to use the new -z option available in git-config version 1.5.3 and later. To configure load_config based upon the git version we need to move thos below the git-version computation. No logic changes yet, just a minor reordering of the code. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Change main window layout to support wider screensJohannes Sixt2007-10-121-11/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The layout is changed to have the file lists at the left (Unstaged Changes at the top, Staged Changes below it) and the diff window at the right (with the commit area below it). +----------+---------------------+ | Unstaged | Diff area | | | | | | | | | | +----------+ | | Staged | | | +---------------------+ | | Commit area | | | | +----------+---------------------+ The advantages are: - The height of the file lists can be adjusted independently to fit the files that they contain. - The diff viewer is higher. On wide screens it is ok that the main window is now generally wider, too. Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: update Italian translationMichele Ballabio2007-10-122-244/+429
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An Italian glossary was also added. Some changes: * commit (verb): (creare una) nuova revisione * commit (noun): revisione * checkout: attivazione * tracking branch: duplicato locale di ramo remoto * repository: archivio * some terms are used with more consistency Signed-off-by: Michele Ballabio <barra_cuda@katamail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Updated po strings based on current sourcesShawn O. Pearce2007-10-107-1657/+4423
| | |
| * | git-gui: add mingw specific startup wrapperSteffen Prohaska2007-10-102-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The wrapper adds the directory it is installed in to PATH. This is required for the git commands implemented in shell. git-gui fails to launch them if PATH is not modified. The wrapper script also accepts an optional command line switch '--working-dir <dir>' and changes to <dir> before launching the actual git-gui. This is required to implement the "Git Gui Here" Explorer shell extension. As a last step the original git-gui script is launched, which is expected to be located in the same directory under the name git-gui.tcl. Signed-off-by: Steffen Prohaska <prohaska@zib.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: set NO_MSGFMT to force using pure tcl replacement in msysgitSteffen Prohaska2007-10-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Shawn's git-gui Makefile supports the pure tcl replacement for msgfmt if setting NO_MSGFMT. This patch sets the NO_MSGFMT for msysgit. Signed-off-by: Steffen Prohaska <prohaska@zib.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: add directory git-gui is located in to PATH (on Windows)Steffen Prohaska2007-10-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit modifies PATH to include a good guess where git could be found. The first location to search for executable is the directory git-gui is installed in. This is a good guess for a sane installation. Even if git is not available in PATH, git-gui is now able to find it. Hence git-gui can be passed to wish as an absolute path without caring about the environment. We must modify PATH to be able to spawn shell based git commands. For builtins it would be sufficient to located them and execute them with their absolute path. But for shell based git commmands PATH needs to be modified. Signed-off-by: Steffen Prohaska <prohaska@zib.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | Merge branch 'cs/de'Shawn O. Pearce2007-10-104-216/+698
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * cs/de: git-gui: Update German translation, including latest glossary changes git-gui: Incorporate glossary changes into existing German translation git-gui: Update German glossary according to mailing list discussion git-gui: Add more words to translation glossary
| | * | git-gui: Update German translation, including latest glossary changesChristian Stimming2007-10-101-165/+633
| | | |
| | * | git-gui: Incorporate glossary changes into existing German translationChristian Stimming2007-10-101-66/+47
| | | |
| | * | git-gui: Update German glossary according to mailing list discussionChristian Stimming2007-10-101-11/+34
| | | |
| | * | git-gui: Add more words to translation glossaryChristian Stimming2007-10-102-2/+12
| | | |
| * | | git-gui: Shorten the staged/unstaged changes title bar textShawn O. Pearce2007-10-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The titles for the staged and unstaged areas were usually opening up too narrow by default, causing the text to be clipped by Tcl as it tried to center the text in the middle of the available area. This meant that users who were new to git-gui did not get to see the entire header and may be unclear about what the different lists are. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | | git-gui: Bind Cmd-, to Preferences on Mac OS XShawn O. Pearce2007-10-102-7/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A Mac OS X UI convention is to have Cmd-, be the accelerator key for the preferences window, which by convention is located in the apple menu under a separator below the about command. We also now call this "Preferences..." as that is the conventional term used in English. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>