* Re: gitweb tags feed, Re: New version announcements?
From: Petr Baudis @ 2008-09-25 15:31 UTC (permalink / raw)
To: Julian Phillips; +Cc: Jordi Bunster, git, gitster
In-Reply-To: <Pine.LNX.4.64.0807241600190.7093@reaper.quantumfyre.co.uk>
On Thu, Jul 24, 2008 at 04:04:03PM +0100, Julian Phillips wrote:
> On Thu, 24 Jul 2008, Petr Baudis wrote:
>> On Thu, Jul 24, 2008 at 10:38:24AM -0400, Jordi Bunster wrote:
>>> I've been following the git mailing list to stay on top of new releases,
>>> but the traffic got too high.
>>>
>>> Any way that a git-announce list could be created for security fixes and
>>> new releases? Or maybe an RSS feed on the website?
>
> An RSS feed already exists, have a look at http://gitrss.q42.co.uk/.
Thanks, I have added the RSS feeds to the git.or.cz homepage.
> ---
> Peter's hungry, time to eat lunch.
Mmm...
--
Petr "Pasky" Baudis
People who take cold baths never have rheumatism, but they have
cold baths.
^ permalink raw reply
* RE: [QGit] Some suggestion
From: Li Frank-B20596 @ 2008-09-25 15:20 UTC (permalink / raw)
To: Marco Costalba; +Cc: git
In-Reply-To: <e5bfff550809250451q578b8e10r75c043d307a63f28@mail.gmail.com>
Marco:
Yes, it is really work although it is not nature way.
This way don't work at file view.
Ctrl +/- change font size, but how to change source code view
font size.
12. Marcor Costalba 10 #include <QProcess>
12. Marcor Costalba 10 #include <QRegExp>
Best regards
Frank Li
-----Original Message-----
From: Marco Costalba [mailto:mcostalba@gmail.com]
Sent: Thursday, September 25, 2008 7:52 PM
To: Li Frank-B20596
Cc: git@vger.kernel.org
Subject: Re: [QGit] Some suggestion
On Thu, Sep 25, 2008 at 7:24 AM, Li Frank-B20596
<Frank.Li@freescale.com> wrote:
> Can add below function at qgit?
> ===Difference other version===
> 1. user choose a commit,
> 2. right click
> Check working dir
> View patch
> ....
> [Diff with other commit]
>
> 3. change icon +
> 4. user choose other commit
>
> QGit show list of changed files.
> click one files, call extern diff tool show difference.
>
> === file view ===
> Can use different color to high light current commit change.
>
You can _already_ do this.
1. user choose a commit
2. user choose other commit with CTRL + RIGHT CLICK
One of the problems of qgit is that the features are not immediately
visible. This is a conscious choice to avoid cluttering the GUI.
Currently the _best_ way to have a complete idea of qgit is to read the
handbook (press F1 key): it takes only 5 minutes and you can find
interesting features otherwise very difficult to find by accident.
Marco
^ permalink raw reply
* Re: [JGIT RFC PATCH] Improve handling of parsing errors in OpenSshConfig
From: Shawn O. Pearce @ 2008-09-25 15:16 UTC (permalink / raw)
To: Jonas Fonseca; +Cc: Robin Rosenberg, sverre@rabbelier.nl, git@vger.kernel.org
In-Reply-To: <20080925132937.GA16151@diku.dk>
Jonas Fonseca <fonseca@diku.dk> wrote:
> Badly quoted entries are now ignored similar to how bad port number are
> currently ignored. A check for negative port numbers is now performed
> so that they also will be ignored.
>
> Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
>
> ---
> .../spearce/jgit/transport/OpenSshConfigTest.java | 46 +++++++++++++++---
> .../jgit/transport/DefaultSshSessionFactory.java | 10 +++-
> .../org/spearce/jgit/transport/OpenSshConfig.java | 51 ++++++++++++-------
> 3 files changed, 79 insertions(+), 28 deletions(-)
Well, at first glance the new OpenSshConfigException is missing
from the patch. We need that class to compile correctly. ;-)
> diff --git a/org.spearce.jgit/src/org/spearce/jgit/transport/DefaultSshSessionFactory.java b/org.spearce.jgit/src/org/spearce/jgit/transport/DefaultSshSessionFactory.java
> index 89beab7..123a9b5 100644
> --- a/org.spearce.jgit/src/org/spearce/jgit/transport/DefaultSshSessionFactory.java
> +++ b/org.spearce.jgit/src/org/spearce/jgit/transport/DefaultSshSessionFactory.java
> @@ -89,7 +90,12 @@
> @Override
> public synchronized Session getSession(String user, String pass,
> String host, int port) throws JSchException {
> - final OpenSshConfig.Host hc = getConfig().lookup(host);
> + final OpenSshConfig.Host hc;
> + try {
> + hc = getConfig().lookup(host);
> + } catch (OpenSshConfigException osce) {
> + throw new JSchException(osce.getMessage());
> + }
I would perfer to chain the OpenSshConfigException as the cause of
the JSchException. That way the caller has a chance to give us a
complete stack trace, including the cause of the OSCE being the
inner NumberFormatException or ParseException.
Robin or I will need to edit the EclipseSshSessionFactory to add
this same sort of try/catch. To keep the tree buildable we'll
want to squash that into your patch. Yea, sorry, this is where
the egit+jgit within one repository is going to bite us.
> diff --git a/org.spearce.jgit/src/org/spearce/jgit/transport/OpenSshConfig.java b/org.spearce.jgit/src/org/spearce/jgit/transport/OpenSshConfig.java
> index b08d5c6..95a37f5 100644
> --- a/org.spearce.jgit/src/org/spearce/jgit/transport/OpenSshConfig.java
> +++ b/org.spearce.jgit/src/org/spearce/jgit/transport/OpenSshConfig.java
> @@ -146,6 +149,10 @@ public Host lookup(final String hostName) {
> } finally {
> in.close();
> }
> + } catch (NumberFormatException nfe) {
> + throw new OpenSshConfigException("Parse error", nfe);
> + } catch (ParseException pe) {
> + throw new OpenSshConfigException("Parse error", pe);
> } catch (FileNotFoundException none) {
> hosts = Collections.emptyMap();
> } catch (IOException err) {
If we are really going to this level of effort, can we please have
the file path and line number of the invalid line in the exception?
We rarely parse the ~/.ssh/config. In general its parsed only once
during startup. Going through a bit more work at parse time to get
more accurate error messages is acceptable.
I think it may be a good idea to have the exception thrown only
when a bad Host block is accessed, or if we try to access an unknown
host and there is an unreadable Host block.
So I'm thinking more like we stuff an OSCE instance into the Host
block if the host has a bad entry, and during get() or lookup()
we test for the exception and rethrow the exception.
E.g. lets say my config file is this:
$ cat ~/.ssh/config
Host work
Hostname internal.google.com"
Port -1
Host orcz
Hostname repo.or.cz
User spearce
Port 22
then:
jgit fetch orcz:foo.git; # works without error
jgit fetch work:foo.git; # throws OSCE due to bad Hostname
jgit fetch kernel.org:foo.git; # works as no Host matched
However if my config was more bogus, e.g.:
$ cat ~/.ssh/config
Host work"
User sop
Host orcz
Hostname repo.or.cz
User spearce
Port 22
then:
jgit fetch orcz:foo.git; # still works without error
jgit fetch work:foo.git; # fails due to bad Host header
jgit fetch kernel.org:foo.git; # fails due to bad Host header
--
Shawn.
^ permalink raw reply
* Re: [PATCH] git-submodule: remove unnecessary exits when calling resolve_relative_url
From: Johan Herland @ 2008-09-25 14:58 UTC (permalink / raw)
To: Shawn O. Pearce; +Cc: git, Johannes Sixt, David Aguilar, gitster, mlevedahl
In-Reply-To: <20080925145407.GM3669@spearce.org>
On Thursday 25 September 2008, Shawn O. Pearce wrote:
> Johannes Sixt <j.sixt@viscovery.net> wrote:
> > Did you test it? The command inside $(...) is run in its own
> > sub-process, therefore, the die() does not exit the caller, just
> > the sub-process, and the || exit *is* required.
> >
> > BTW, I think that || exit is sufficient; you don't need to add
> > another error message - the one that resolve_relative_url() prints
> > is sufficient.
>
> Exactly.
>
> I think we just need a "|| exit" after each of these
> $(resolve_relative_url) calls. The original patch that
> started this discussion just needs a "|| exit".
The original patch did exactly that:
http://article.gmane.org/gmane.comp.version-control.git/96493
Have fun!
...Johan
--
Johan Herland, <johan@herland.net>
www.herland.net
^ permalink raw reply
* Re: [PATCH] git-submodule: remove unnecessary exits when calling resolve_relative_url
From: Shawn O. Pearce @ 2008-09-25 14:54 UTC (permalink / raw)
To: Johannes Sixt; +Cc: David Aguilar, gitster, git, johan, mlevedahl
In-Reply-To: <48DB81DE.6070600@viscovery.net>
Johannes Sixt <j.sixt@viscovery.net> wrote:
> David Aguilar schrieb:
> > resolve_relative_url calls die() when no remote url exists so these calls to
> > exit can be removed.
> ...
> > @@ -155,7 +155,7 @@ cmd_add()
> > case "$repo" in
> > ./*|../*)
> > # dereference source url relative to parent's url
> > - realrepo=$(resolve_relative_url "$repo") || exit
> > + realrepo=$(resolve_relative_url "$repo")
> > ;;
>
> Did you test it? The command inside $(...) is run in its own sub-process,
> therefore, the die() does not exit the caller, just the sub-process, and
> the || exit *is* required.
>
> BTW, I think that || exit is sufficient; you don't need to add another
> error message - the one that resolve_relative_url() prints is sufficient.
Exactly.
I think we just need a "|| exit" after each of these
$(resolve_relative_url) calls. The original patch that
started this discussion just needs a "|| exit".
die with an additional message is just too verbose.
--
Shawn.
^ permalink raw reply
* Re: [PATCH] usage.c: remove unused functions
From: Shawn O. Pearce @ 2008-09-25 14:51 UTC (permalink / raw)
To: Petr Baudis, Jonas Fonseca, Lars Hjemli
Cc: Thomas Rast, Nanako Shiraishi, Junio C Hamano, git
In-Reply-To: <20080925124836.GI10360@machine.or.cz>
Petr Baudis <pasky@suse.cz> wrote:
> On Thu, Sep 25, 2008 at 01:48:37PM +0200, Thomas Rast wrote:
> > Nanako Shiraishi wrote:
> > > This removes three functions that are not used anywhere.
> > [...]
> > > -void set_usage_routine(void (*routine)(const char *err) NORETURN)
> > > -void set_error_routine(void (*routine)(const char *err, va_list params))
> > > -void set_warn_routine(void (*routine)(const char *warn, va_list params))
> >
> > These blame to the following commit:
> >
> > commit 39a3f5ea7c0352a530338d30d4e618f6b4db84e4
> > Author: Petr Baudis <pasky@suse.cz>
> >
> > Customizable error handlers
...
> > So apparently the intent was that they would only be used from outside
> > Git. I don't know whether anyone still plans to do that, but they're
> > certainly not "just" unused.
>
> I don't think it will be a big deal to remove these functions, though it
> does feel like a little bit of a step backwards in the libgit efforts.
> There are some programs that already link to Git, like CGit - I wonder
> if some of them don't use them (CGit itself doesn't).
IMHO these are useless for a "libgit". However both tig and
cgit link to the non-existant libgit.a, so they may be using
these routines. I've CC'd their authors and am not applying this
particular change without an ACK from them.
--
Shawn.
^ permalink raw reply
* Re: Partial tree export and merging
From: Nguyen Thai Ngoc Duy @ 2008-09-25 14:51 UTC (permalink / raw)
To: Heiko Voigt; +Cc: git, Jens Lehmann
In-Reply-To: <48DBA1DF.3050502@mahr.de>
On 9/25/08, Heiko Voigt <heiko.voigt@mahr.de> wrote:
> Nguyen Thai Ngoc Duy schrieb:
>
> > That could be done with (under-developing) sparse checkout. Basically
> > language team's people do "git clone
> --sparse-checkout='*.loc:*.html'
> > your-repo.git". Then they only have *.loc and *.html files in working
> > directory. When they commit, all other files are unchanged. Developers
> > merge to have updated *.log/html as usual.
> >
>
> Where is that option ? Or are you suggesting me to implement it ?
As I said, it is being developed. It should not be used in production
environment yet but if you want to try, you can get it from here
http://repo.or.cz/w/git/pclouds.git in branch sparse-checkout
> > I have a question though: is language team allowed to checkout/modify
> > files other than *.loc and *.html?
> >
>
> Well in an ideal world they should only have access to the "language"
> files. But it is not crucial for us if they get access to the source. Its
> more an issue of user friendlyness. The revision control which is in place
> at the moment does allow them to selectively check out those files.
Thanks. Just wanted to know the scenario that sparse checkout could be used.
--
Duy
^ permalink raw reply
* Re: [RFC] gitweb wishlist and TODO list
From: Pedro Melo @ 2008-09-25 14:45 UTC (permalink / raw)
To: Jakub Narebski; +Cc: git, Petr Baudis
In-Reply-To: <200809251423.56983.jnareb@gmail.com>
Hi,
On Sep 25, 2008, at 1:23 PM, Jakub Narebski wrote:
> Pedro Melo wrote:
>> On Sep 25, 2008, at 11:30 AM, Jakub Narebski wrote:
>>
>>> * Support for FastCGI (via CGI::Fast or FCGI).
>>>
>>> Unfortunately I don't use FastCGI. This has to be done in a very
>>> un-intruisive way, and without performance penalties for "ordinary"
>>> CGI and mod_perl.
>>>
>>> Suggested: input reading and validation refactoring.
>>
>> Is it ok to require CPAN modules? If yes, then using HTTP::Engine
>> as a
>> base could be helpful here.
>
> No, it is not. Some gitweb installations (kernel.org, IIRC) are on
> tightly managed machines, where installation is severely restricted.
> If it is distributed together with Perl package it is best, if it can
> be found in distribution packages it is good, if it can be found in
> distribution extras it is quite good, if it can be found in trusted
> package repository, it is manageable. Installing untested packages
> from CPAN is usually out of the question.
> That said...
>
>> It supports standalone deployments as well as FastCGI, CGI, mod_perl,
>> POE and others.
>>
>> And it acts as a very simple HTTP-layer, without any "framework"
>> logic.
>
> ...if we could make it conditional on HTTP::Engine being installed,
> and fallback on current code easily, it could be done, I think,
> without
> problems.
>
> Thanks for the pointer.
While researching HTTP::Engine (I use Catalyst and they where talking
about moving to it), I also came across a new HTTP layer, called
Mango. Also on CPAN, so same conditional code applies.
Right now, I'm not sure what the Cat team is thinking, HTTP::Engine or
Mango, or other, but I suggest the use of the stack then end up
choosing. The Cat team has a very good test-driven way-of-doing
things, and the modules they use tend to stabilize very quickly.
Best regards,
--
Pedro Melo
Blog: http://www.simplicidade.org/notes/
XMPP ID: melo@simplicidade.org
Use XMPP!
^ permalink raw reply
* Re: Partial tree export and merging
From: Heiko Voigt @ 2008-09-25 14:36 UTC (permalink / raw)
To: Nguyen Thai Ngoc Duy; +Cc: git, Jens Lehmann
In-Reply-To: <fcaeb9bf0809241051se24bcf7tb836d1b820e288d6@mail.gmail.com>
Nguyen Thai Ngoc Duy schrieb:
> That could be done with (under-developing) sparse checkout. Basically
> language team's people do "git clone --sparse-checkout='*.loc:*.html'
> your-repo.git". Then they only have *.loc and *.html files in working
> directory. When they commit, all other files are unchanged. Developers
> merge to have updated *.log/html as usual.
Where is that option ? Or are you suggesting me to implement it ?
> I have a question though: is language team allowed to checkout/modify
> files other than *.loc and *.html?
Well in an ideal world they should only have access to the "language"
files. But it is not crucial for us if they get access to the source.
Its more an issue of user friendlyness. The revision control which is in
place at the moment does allow them to selectively check out those files.
Heiko
^ permalink raw reply
* Re: On Sponsor Notices
From: Shawn O. Pearce @ 2008-09-25 14:35 UTC (permalink / raw)
To: Petr Baudis; +Cc: Nicolas Pitre, git
In-Reply-To: <20080925143252.GN10360@machine.or.cz>
Petr Baudis <pasky@suse.cz> wrote:
> On Thu, Sep 25, 2008 at 10:20:23AM -0400, Nicolas Pitre wrote:
> >
> > See commit 6c3a158316. If you send a mail to npitre@mvista.com at this
> > point, it most likely won't reach me.
>
> Hmm, perhaps that makes the most sense then. I'm not sure if Shawn
> already applied my patches or which part of them - they don't see to be
> pushed out yet. Shawn, if it's convenient for you, could you please
>
> s/This patch has been sponsored by Novartis.
>
> Signed-off-by: Petr Baudis <pasky@suse.cz>/Signed-off-by: Petr Baudis
> <petr.baudis@novartis.com>/ them?
Yup. I only pushed them to my pu branch because I suspected
something like this was going to happen. ;-)
One filter-branch script coming up...
--
Shawn.
^ permalink raw reply
* Re: On Sponsor Notices
From: Petr Baudis @ 2008-09-25 14:32 UTC (permalink / raw)
To: Nicolas Pitre; +Cc: git, spearce
In-Reply-To: <alpine.LFD.2.00.0809251016420.3635@xanadu.home>
On Thu, Sep 25, 2008 at 10:20:23AM -0400, Nicolas Pitre wrote:
> On Thu, 25 Sep 2008, Petr Baudis wrote:
>
> > On Wed, Sep 24, 2008 at 10:36:41PM -0400, Nicolas Pitre wrote:
> > > I'd suggest you do like some people working on the Linux kernel, i.e.
> > > use your employer's email address for the Signed-off-by line but use
> > > whatever address you prefer for the from/author line.
> >
> > Even if the employer's email address is basically bogus? Can you point
> > to some examples of Linux kernel patches doing that, please?
>
> See commit 6c3a158316. If you send a mail to npitre@mvista.com at this
> point, it most likely won't reach me.
Hmm, perhaps that makes the most sense then. I'm not sure if Shawn
already applied my patches or which part of them - they don't see to be
pushed out yet. Shawn, if it's convenient for you, could you please
s/This patch has been sponsored by Novartis.
Signed-off-by: Petr Baudis <pasky@suse.cz>/Signed-off-by: Petr Baudis
<petr.baudis@novartis.com>/ them?
--
Petr "Pasky" Baudis
People who take cold baths never have rheumatism, but they have
cold baths.
^ permalink raw reply
* Re: [JGIT RFC PATCH] Improve handling of parsing errors in OpenSshConfig
From: Jonas Fonseca @ 2008-09-25 14:30 UTC (permalink / raw)
To: Robin Rosenberg
Cc: Shawn O. Pearce, Robin Rosenberg, sverre@rabbelier.nl,
git@vger.kernel.org
In-Reply-To: <20080925132937.GA16151@diku.dk>
On Thu, Sep 25, 2008 at 15:29, Jonas Fonseca <fonseca@diku.dk> wrote:
> Badly quoted entries are now ignored similar to how bad port number are
> currently ignored. A check for negative port numbers is now performed
> so that they also will be ignored.
Sorry for spamming this list today. The commit message should of
course read something like:
Throw an OpenSshConfigException when parsing meet badly quoted entries
and port numbers, which do not contain numbers or are negative.
--
Jonas Fonseca
^ permalink raw reply
* Re: On Sponsor Notices
From: Nicolas Pitre @ 2008-09-25 14:20 UTC (permalink / raw)
To: Petr Baudis; +Cc: git, spearce
In-Reply-To: <20080925101558.GF10360@machine.or.cz>
On Thu, 25 Sep 2008, Petr Baudis wrote:
> On Wed, Sep 24, 2008 at 10:36:41PM -0400, Nicolas Pitre wrote:
> > I'd suggest you do like some people working on the Linux kernel, i.e.
> > use your employer's email address for the Signed-off-by line but use
> > whatever address you prefer for the from/author line.
>
> Even if the employer's email address is basically bogus? Can you point
> to some examples of Linux kernel patches doing that, please?
See commit 6c3a158316. If you send a mail to npitre@mvista.com at this
point, it most likely won't reach me.
Nicolas
>
> Petr "Pasky" Baudis
>
Nicolas
^ permalink raw reply
* Re: [RFC/PATCH] remove vim syntax highlighting in favor of upstream
From: Bob Hiestand @ 2008-09-25 14:00 UTC (permalink / raw)
To: SZEDER Gábor; +Cc: Jeff King, vim, Shawn O. Pearce, git
In-Reply-To: <20080925124817.GC6816@neumann>
On Thu, Sep 25, 2008 at 7:48 AM, SZEDER Gábor <szeder@ira.uka.de> wrote:
> Hi,
>
> OK, so I'm complaining a bit.
>
> On Wed, Sep 24, 2008 at 09:56:58PM +0200, SZEDER Gábor wrote:
>> +To install:
>> +
>> + 1. Copy these files to vim's syntax directory $HOME/.vim/syntax
>> + 2. Auto-detect the editing of various git-related filetypes:
>> + $ cat >>$HOME/.vimrc <<'EOF'
>> + autocmd BufNewFile,BufRead *.git/COMMIT_EDITMSG setf gitcommit
>> + autocmd BufNewFile,BufRead *.git/config,.gitconfig setf gitconfig
>> + autocmd BufNewFile,BufRead git-rebase-todo setf gitrebase
>> + autocmd BufNewFile,BufRead .msg.[0-9]*
>> + \ if getline(1) =~ '^From.*# This line is ignored.$' |
>> + \ setf gitsendemail |
>> + \ endif
>> + autocmd BufNewFile,BufRead *.git/**
>> + \ if getline(1) =~ '^\x\{40\}\>\|^ref: ' |
>> + \ setf git |
>> + \ endif
>> + EOF
>
> There are issues with this second step. If I append this code to my
> .vimrc, then vim sometimes overrides the filetype with conf.
>
> vim has a guessing rule for detecting conf files, which triggers if
> one of the first five lines of the file begins with a '#'. So if I
> start to write a new commit message or I interactively rebase 4 or
> less commits, then this rule triggers and vim overrides the git
> filetype with filetype conf. If I do a commit --amend with a long
> enough original commit message or an interactive rebase with more than
> 4 commit, then this rule no more triggers and everything is fine.
>
> But what's really puzzling is that if I insert the above code into
> $VIMRUNTIME/filetype.vim (at the spot where it can be found in vim
> 7.2's filetype.vim), then everything works as expected, git filetypes
> are never overridden.
>
> This is not related to the changes in this patch. git's original vim
> syntax highlight for commit messages has the exact same behaviour.
>
> The first step is OK: it doesn't matter whether I put git-related
> syntax files under $HOME/.vim/syntax/ or under $VIMRUNTIME/syntax/.
I'd guess that your autocommands defined in .vimrc take effect after
the default file type settings. When you use ':setf', it
intentionally will not override the existing file type if one has
already been detected.
Use ':help new-filetype' to see the various ways you can interact with
and/or override the default filetype detection.
bob
^ permalink raw reply
* [TG PATCH] Complete depend subcommand
From: Jonas Fonseca @ 2008-09-25 13:47 UTC (permalink / raw)
To: Petr Baudis, git
In-Reply-To: <20080925110656.GB12949@diku.dk>
Also, removes a debug line and fixes the script header.
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
---
contrib/tg-completion.bash | 60 ++++++++++++++++++++++++++-----------------
1 files changed, 36 insertions(+), 24 deletions(-)
The completion of the depend command didn't make it into the first
patch because I had a broken topgit usage. Here is a resend, which
also amends the script header.
diff --git a/contrib/tg-completion.bash b/contrib/tg-completion.bash
index 35eabe9..59fbc50 100755
--- a/contrib/tg-completion.bash
+++ b/contrib/tg-completion.bash
@@ -7,32 +7,13 @@
# Conceptually based on gitcompletion (http://gitweb.hawaga.org.uk/).
# Distributed under the GNU General Public License, version 2.0.
#
-# The contained completion routines provide support for completing:
-#
-# *) local and remote branch names
-# *) local and remote tag names
-# *) .git/remotes file names
-# *) git 'subcommands'
-# *) tree paths within 'ref:path/to/file' expressions
-# *) common --long-options
-#
# To use these routines:
#
-# 1) Copy this file to somewhere (e.g. ~/.git-completion.sh).
-# 2) Added the following line to your .bashrc:
-# source ~/.git-completion.sh
-#
-# 3) You may want to make sure the git executable is available
-# in your PATH before this script is sourced, as some caching
-# is performed while the script loads. If git isn't found
-# at source time then all lookups will be done on demand,
-# which may be slightly slower.
+# 1) Copy this file to somewhere (e.g. ~/.tg-completion.sh).
+# 2) Source it from your ~/.bashrc.
#
-# 4) Consider changing your PS1 to also show the current branch:
-# PS1='[\u@\h \W$(__tg_ps1 " (%s)")]\$ '
-#
-# The argument to __tg_ps1 will be displayed only if you
-# are currently in a git repository. The %s token will be
+# Note: Make sure the tg script is in your PATH before you source this
+# script, so it can properly setup cached values.
case "$COMP_WORDBREAKS" in
*:*) : great ;;
@@ -172,6 +153,22 @@ __tg_remotes ()
done
}
+__tg_find_subcommand ()
+{
+ local word subcommand c=1
+
+ while [ $c -lt $COMP_CWORD ]; do
+ word="${COMP_WORDS[c]}"
+ for subcommand in $1; do
+ if [ "$subcommand" = "$word" ]; then
+ echo "$subcommand"
+ return
+ fi
+ done
+ c=$((++c))
+ done
+}
+
__tg_complete_revlist ()
{
local pfx cur="${COMP_WORDS[COMP_CWORD]}"
@@ -268,6 +265,21 @@ _tg_delete ()
esac
}
+_tg_depend ()
+{
+ local subcommands="add"
+ local subcommand="$(__git_find_subcommand "$subcommands")"
+ if [ -z "$subcommand" ]; then
+ __tgcomp "$subcommands"
+ return
+ fi
+
+ case "$subcommand" in
+ add)
+ __tgcomp "$(__tg_refs)"
+ esac
+}
+
_tg_export ()
{
local cur="${COMP_WORDS[COMP_CWORD]}"
@@ -411,6 +423,7 @@ _tg ()
case "$command" in
create) _tg_create "$c" ;;
delete) _tg_delete ;;
+ depend) _tg_depend ;;
export) _tg_export ;;
help) _tg_help ;;
import) _tg_import ;;
@@ -426,7 +439,6 @@ _tg ()
### }}}
- __tgcomp "$(__tg_refs top-bases)"
complete -o default -o nospace -F _tg tg
# The following are necessary only for Cygwin, and only are needed
--
tg: (43a8db8..) jf/completion-fixes (depends on: master)
--
Jonas Fonseca
^ permalink raw reply related
* Re: [RFC] gitweb wishlist and TODO list
From: Petr Baudis @ 2008-09-25 13:33 UTC (permalink / raw)
To: Wincent Colaiuta; +Cc: Jakub Narebski, git
In-Reply-To: <B3B6996F-EC51-49DC-8ECE-DBA25E8F61DE@wincent.com>
On Thu, Sep 25, 2008 at 03:19:09PM +0200, Wincent Colaiuta wrote:
> One which I'm looking at doing is supporting reading the "README.html" from
> the tree indicated by the current HEAD instead of reading it from a file in
> the .git directory.
>
> This should make tracking and updating such READMEs a little easier as all
> that'll be required is a "push" to advance the HEAD and the new README goes
> live.
>
> Obviously, will have to make this optional and configurable. I'm thinking
> of providing a means of specifying the filename to look for (no filename,
> the default, means don't look), and also a setting to indicate the content
> type of the file (either plain text, which would be wrapped in a
> <pre></pre> block with HTML entities used where appropriate, or HTML which
> would be included verbatim).
In my queue and something I will hopefully get to submit tomorrow or at
the beginning of next week is actually support for full-blown templating
of gitweb pages (customization of the summary page, even adding extra
project actions) based on gitconfig-style specification within the
project HEAD. In its simplest variant, this could be used for including
a README from the HEAD tree as well, I think. But it's in the same class
as the git-gui support for the 'publish' dialog, something potentially
useful for others, but not *universally* useful and in this case,
unfortunately somewhat invasive.
--
Petr "Pasky" Baudis
People who take cold baths never have rheumatism, but they have
cold baths.
^ permalink raw reply
* [JGIT RFC PATCH] Improve handling of parsing errors in OpenSshConfig
From: Jonas Fonseca @ 2008-09-25 13:29 UTC (permalink / raw)
To: Robin Rosenberg
Cc: Shawn O. Pearce, Robin Rosenberg, sverre@rabbelier.nl,
git@vger.kernel.org
In-Reply-To: <tQAHDMR4.1222342394.9002900.roro@localhost>
Badly quoted entries are now ignored similar to how bad port number are
currently ignored. A check for negative port numbers is now performed
so that they also will be ignored.
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
---
.../spearce/jgit/transport/OpenSshConfigTest.java | 46 +++++++++++++++---
.../jgit/transport/DefaultSshSessionFactory.java | 10 +++-
.../org/spearce/jgit/transport/OpenSshConfig.java | 51 ++++++++++++-------
3 files changed, 79 insertions(+), 28 deletions(-)
Robin Rosenberg <robin.rosenberg@dewire.com> wrote Thu, Sep 25, 2008:
> Den 9/25/2008, skrev "Jonas Fonseca" <fonseca@diku.dk>:
>
> >Badly quoted entries are now ignored similar to how bad port number are
> >currently ignored. A check for negative port numbers is now performed
> >so that they also will be ignored.
>
> Nooo. We should really give some feedback on bad entries. OpenSSH
> (version 5.1) complains and refuses to connect if I give it a bad port
> number or hostname. It complains about "missing parameter" and bad
> port number for these cases. OpenSSH doesn't simply ignore them.
>
> HostName=bad"
> Port=hubba
>
> Even if openssh would ignore them I'd think it would be bad if we did,
> unless there was some serious compatibility issue here.
Maybe something like this? It adds OpenSshConfigException which will
"contain" either a NumberFormatException or a ParseException.
diff --git a/org.spearce.jgit.test/tst/org/spearce/jgit/transport/OpenSshConfigTest.java b/org.spearce.jgit.test/tst/org/spearce/jgit/transport/OpenSshConfigTest.java
index ad6e79c..6b7bb4b 100644
--- a/org.spearce.jgit.test/tst/org/spearce/jgit/transport/OpenSshConfigTest.java
+++ b/org.spearce.jgit.test/tst/org/spearce/jgit/transport/OpenSshConfigTest.java
@@ -42,6 +42,7 @@
import java.io.IOException;
import java.io.OutputStreamWriter;
+import org.spearce.jgit.errors.OpenSshConfigException;
import org.spearce.jgit.lib.RepositoryTestCase;
import org.spearce.jgit.transport.OpenSshConfig.Host;
@@ -72,7 +73,18 @@ private void config(final String data) throws IOException {
fw.close();
}
- public void testNoConfig() {
+ private boolean parseError(String config) throws Exception {
+ config(config);
+ OpenSshConfigException osce = null;
+ try {
+ osc.lookup("something");
+ } catch (OpenSshConfigException cause) {
+ return true;
+ }
+ return false;
+ }
+
+ public void testNoConfig() throws Exception {
final Host h = osc.lookup("repo.or.cz");
assertNotNull(h);
assertEquals("repo.or.cz", h.getHostName());
@@ -114,11 +126,7 @@ config("Host \"good\"\n" +
" Port=\"2222\"\n" +
"Host \"spaced\"\n" +
"# Bad host name, but testing preservation of spaces\n" +
- " HostName=\" spaced\ttld \"\n" +
- "# Misbalanced quotes\n" +
- "Host \"bad\"\n" +
- "# OpenSSH doesn't allow this but ...\n" +
- " HostName=bad.tld\"\n");
+ " HostName=\" spaced\ttld \"\n");
assertEquals("good.tld", osc.lookup("good").getHostName());
assertEquals("gooduser", osc.lookup("good").getUser());
assertEquals(6007, osc.lookup("good").getPort());
@@ -128,7 +136,31 @@ config("Host \"good\"\n" +
assertEquals(2222, osc.lookup("unquoted").getPort());
assertEquals(2222, osc.lookup("hosts").getPort());
assertEquals(" spaced\ttld ", osc.lookup("spaced").getHostName());
- assertEquals("bad.tld\"", osc.lookup("bad").getHostName());
+ }
+
+ public void testNegativePortNumber() throws Exception {
+ assertTrue(parseError("Host negativeportnumber\n" +
+ "Port -200\n"));
+ }
+
+ public void testBadPortNumber() throws Exception {
+ assertTrue(parseError("Host badportnumber\n" +
+ "Port twentytwo\n"));
+ }
+
+ public void testBadlyQuotedPortNumber() throws Exception {
+ assertTrue(parseError("Host badportquote\n" +
+ "Port \"2222\n"));
+ }
+
+ public void testBadlyQuotedPortNumber2() throws Exception {
+ assertTrue(parseError("Host badportquote2\n" +
+ "Port 2222\"\n"));
+ }
+
+ public void testBadlyQuotedHost() throws Exception {
+ assertTrue(parseError("Host badly \"quoted\n" +
+ "HostName=unknown\n"));
}
public void testAlias_DoesNotMatch() throws Exception {
diff --git a/org.spearce.jgit/src/org/spearce/jgit/transport/DefaultSshSessionFactory.java b/org.spearce.jgit/src/org/spearce/jgit/transport/DefaultSshSessionFactory.java
index 89beab7..123a9b5 100644
--- a/org.spearce.jgit/src/org/spearce/jgit/transport/DefaultSshSessionFactory.java
+++ b/org.spearce.jgit/src/org/spearce/jgit/transport/DefaultSshSessionFactory.java
@@ -65,6 +65,7 @@
import com.jcraft.jsch.Session;
import com.jcraft.jsch.UIKeyboardInteractive;
import com.jcraft.jsch.UserInfo;
+import org.spearce.jgit.errors.OpenSshConfigException;
/**
* Loads known hosts and private keys from <code>$HOME/.ssh</code>.
@@ -89,7 +90,12 @@
@Override
public synchronized Session getSession(String user, String pass,
String host, int port) throws JSchException {
- final OpenSshConfig.Host hc = getConfig().lookup(host);
+ final OpenSshConfig.Host hc;
+ try {
+ hc = getConfig().lookup(host);
+ } catch (OpenSshConfigException osce) {
+ throw new JSchException(osce.getMessage());
+ }
host = hc.getHostName();
if (port <= 0)
port = hc.getPort();
@@ -128,7 +134,7 @@ private JSch getUserJSch() throws JSchException {
return userJSch;
}
- private OpenSshConfig getConfig() {
+ private OpenSshConfig getConfig() throws OpenSshConfigException {
if (config == null)
config = OpenSshConfig.get();
return config;
diff --git a/org.spearce.jgit/src/org/spearce/jgit/transport/OpenSshConfig.java b/org.spearce.jgit/src/org/spearce/jgit/transport/OpenSshConfig.java
index b08d5c6..95a37f5 100644
--- a/org.spearce.jgit/src/org/spearce/jgit/transport/OpenSshConfig.java
+++ b/org.spearce.jgit/src/org/spearce/jgit/transport/OpenSshConfig.java
@@ -44,13 +44,16 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
+import java.text.ParseException;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import org.spearce.jgit.errors.InvalidPatternException;
+import org.spearce.jgit.errors.OpenSshConfigException;
import org.spearce.jgit.fnmatch.FileNameMatcher;
import org.spearce.jgit.util.FS;
@@ -72,7 +75,7 @@
*
* @return a caching reader of the user's configuration file.
*/
- public static OpenSshConfig get() {
+ public static OpenSshConfig get() throws OpenSshConfigException {
File home = FS.userHome();
if (home == null)
home = new File(".").getAbsoluteFile();
@@ -110,7 +113,7 @@ protected OpenSshConfig(final File h, final File cfg) {
* configuration file.
* @return r configuration for the requested name. Never null.
*/
- public Host lookup(final String hostName) {
+ public Host lookup(final String hostName) throws OpenSshConfigException {
final Map<String, Host> cache = refresh();
Host h = cache.get(hostName);
if (h == null)
@@ -136,7 +139,7 @@ public Host lookup(final String hostName) {
return h;
}
- private synchronized Map<String, Host> refresh() {
+ private synchronized Map<String, Host> refresh() throws OpenSshConfigException {
final long mtime = configFile.lastModified();
if (mtime != lastModified) {
try {
@@ -146,6 +149,10 @@ public Host lookup(final String hostName) {
} finally {
in.close();
}
+ } catch (NumberFormatException nfe) {
+ throw new OpenSshConfigException("Parse error", nfe);
+ } catch (ParseException pe) {
+ throw new OpenSshConfigException("Parse error", pe);
} catch (FileNotFoundException none) {
hosts = Collections.emptyMap();
} catch (IOException err) {
@@ -156,7 +163,7 @@ public Host lookup(final String hostName) {
return hosts;
}
- private Map<String, Host> parse(final InputStream in) throws IOException {
+ private Map<String, Host> parse(final InputStream in) throws IOException, ParseException {
final Map<String, Host> m = new LinkedHashMap<String, Host>();
final BufferedReader br = new BufferedReader(new InputStreamReader(in));
final List<Host> current = new ArrayList<Host>(4);
@@ -192,35 +199,37 @@ public Host lookup(final String hostName) {
continue;
}
+ final String value = dequote(argValue);
+ if (value == null)
+ continue;
+
if ("HostName".equalsIgnoreCase(keyword)) {
for (final Host c : current)
if (c.hostName == null)
- c.hostName = dequote(argValue);
+ c.hostName = value;
} else if ("User".equalsIgnoreCase(keyword)) {
for (final Host c : current)
if (c.user == null)
- c.user = dequote(argValue);
+ c.user = value;
} else if ("Port".equalsIgnoreCase(keyword)) {
- try {
- final int port = Integer.parseInt(dequote(argValue));
- for (final Host c : current)
- if (c.port == 0)
- c.port = port;
- } catch (NumberFormatException nfe) {
- // Bad port number. Don't set it.
- }
+ final int port = Integer.parseInt(value);
+ if (port < 0)
+ throw new NumberFormatException("Negative port number");
+ for (final Host c : current)
+ if (c.port == 0)
+ c.port = port;
} else if ("IdentityFile".equalsIgnoreCase(keyword)) {
for (final Host c : current)
if (c.identityFile == null)
- c.identityFile = toFile(dequote(argValue));
+ c.identityFile = toFile(value);
} else if ("PreferredAuthentications".equalsIgnoreCase(keyword)) {
for (final Host c : current)
if (c.preferredAuthentications == null)
- c.preferredAuthentications = nows(dequote(argValue));
+ c.preferredAuthentications = nows(value);
} else if ("BatchMode".equalsIgnoreCase(keyword)) {
for (final Host c : current)
if (c.batchMode == null)
- c.batchMode = yesno(dequote(argValue));
+ c.batchMode = yesno(value);
}
}
@@ -242,9 +251,13 @@ private static boolean isHostMatch(final String pattern, final String name) {
return fn.isMatch();
}
- private static String dequote(final String value) {
- if (value.startsWith("\"") && value.endsWith("\""))
+ private static String dequote(final String value) throws ParseException {
+ final boolean hasStart = value.startsWith("\"");
+ final boolean hasEnd = value.endsWith("\"");
+ if (hasStart && hasEnd)
return value.substring(1, value.length() - 1);
+ if (hasStart || hasEnd)
+ throw new ParseException("Quote mismatch", value.indexOf("\""));
return value;
}
--
tg: (cf67dfc..) jf/opensshconfigquote (depends on: master)
--
Jonas Fonseca
^ permalink raw reply related
* Re: [RFC] gitweb wishlist and TODO list
From: Wincent Colaiuta @ 2008-09-25 13:19 UTC (permalink / raw)
To: Jakub Narebski; +Cc: git, Petr Baudis
In-Reply-To: <200809251230.11342.jnareb@gmail.com>
El 25/9/2008, a las 12:30, Jakub Narebski escribió:
> This is yet another series of planned gitweb features. It expands more
> on new user-visible features than on improving gitweb code (therefore
> for example using Git.pm/Git::Repo, gitweb caching, and list form of
> open for pipelines are not mentioned here).
>
> Which tasks / features are most requested? Which tasks should be done
> first? What do you have on your gitweb TODO list?
One which I'm looking at doing is supporting reading the "README.html"
from the tree indicated by the current HEAD instead of reading it from
a file in the .git directory.
This should make tracking and updating such READMEs a little easier as
all that'll be required is a "push" to advance the HEAD and the new
README goes live.
Obviously, will have to make this optional and configurable. I'm
thinking of providing a means of specifying the filename to look for
(no filename, the default, means don't look), and also a setting to
indicate the content type of the file (either plain text, which would
be wrapped in a <pre></pre> block with HTML entities used where
appropriate, or HTML which would be included verbatim).
Cheers,
Wincent
^ permalink raw reply
* [ANNOUNCE] TopGit v0.4
From: Petr Baudis @ 2008-09-25 13:19 UTC (permalink / raw)
To: git
Hi!
This is TopGit v0.4, continuing the mission of practical usability.
I have managed to somehow use this to actually manage a rather large
and non-trivial system of git-gui patches, recently submitted to git@.
(I send out the mail series using tg export --quilt and quilt mail
so far though, and I'm actually finding that quite convenient.)
TopGit is meant as a fresh start in the steps of StGIT, quilt-in-git
and others, of course in an attempt to Get It Right this time around.
TopGit is absolutely minimal porcelain layer that will manage your
patch queue for you using topic branches, one patch per branch,
never rewriting the history in order to enable fully distributed
workflow. You can get TopGit at
http://repo.or.cz/w/topgit.git
and read up on its design, usage and implementation at:
http://repo.or.cz/w/topgit.git?a=blob;f=README
The nicest thing about this release is Kirill's new 'tg mail' command,
'tg export --quilt -b' to create quilt series from arbitrary set of
topic branches and 'tg depend add', which has actually quite trivial
implementation, though. Then there's the usual bunch of small
enhancements and fixes.
Kirill Smelkov (3):
tg help: <something>: improve readability
tg import: fix + make more robust
tg mail: new command for mailing patches
Petr Baudis (19):
tg.sh: Typo fix (incanation -> incantation)
.gitignore: Add tg-import, tg-remote
Makefile: Changing Makefile means executables need to be regenerated too
tg import: Require clean working tree and index
tg import: Check out new files as we go
tg delete: Allow branch delete if we aren't on symbolic HEAD
tg remote README: Add 'git push --all' caveat warning
tg info: Carry over missing Subject line in topmsg
tg info, tg patch: Work on top-base HEAD too
Ignore vim swp files
tg mail: Tidyup
tg mail: Simplify array usage
tg export: Fix exporting remote-based branches
tg delete: Fix spurious output
tg depend add: Add dependency
tg update: Fix resume message
tg mail -s SEND_EMAIL_ARGS: Pass arguments to git send-email
tg export: With quilt driver, accept explicit list of branches
TopGit-0.4
Uwe Kleine-KÄĹnig (1):
Use git-mailinfo to extract author informations from .topmsg
Have fun,
--
Petr "Pasky" Baudis
The next generation of interesting software will be done
on the Macintosh, not the IBM PC. -- Bill Gates
^ permalink raw reply
* Re: [PATCH] usage.c: remove unused functions
From: Jakub Narebski @ 2008-09-25 12:53 UTC (permalink / raw)
To: git
In-Reply-To: <200809251348.42789.trast@student.ethz.ch>
Thomas Rast wrote:
> Nanako Shiraishi wrote:
>> This removes three functions that are not used anywhere.
> [...]
>> -void set_usage_routine(void (*routine)(const char *err) NORETURN)
> [...]
>> -void set_error_routine(void (*routine)(const char *err, va_list params))
> [...]
>> -void set_warn_routine(void (*routine)(const char *warn, va_list params))
>
> These blame to the following commit:
>
> commit 39a3f5ea7c0352a530338d30d4e618f6b4db84e4
> Author: Petr Baudis <pasky@suse.cz>
> Date: Sat Jun 24 04:34:38 2006 +0200
>
> Customizable error handlers
>
> This patch makes the usage(), die() and error() handlers customizable.
> Nothing in the git code itself uses that but many other libgit users
> (like Git.pm) will.
> [...]
>
> So apparently the intent was that they would only be used from outside
> Git. I don't know whether anyone still plans to do that, but they're
> certainly not "just" unused.
By the way, those functions could be used to implement
"git --silent <cmd>", which is equivalent of "git <cmd> 2>/dev/null"
(which you don't always can do easily).
--
Jakub Narebski
Warsaw, Poland
ShadeHawk on #git
^ permalink raw reply
* Re: [PATCH] usage.c: remove unused functions
From: Petr Baudis @ 2008-09-25 12:48 UTC (permalink / raw)
To: Thomas Rast; +Cc: Nanako Shiraishi, Junio C Hamano, git
In-Reply-To: <200809251348.42789.trast@student.ethz.ch>
On Thu, Sep 25, 2008 at 01:48:37PM +0200, Thomas Rast wrote:
> Nanako Shiraishi wrote:
> > This removes three functions that are not used anywhere.
> [...]
> > -void set_usage_routine(void (*routine)(const char *err) NORETURN)
> [...]
> > -void set_error_routine(void (*routine)(const char *err, va_list params))
> [...]
> > -void set_warn_routine(void (*routine)(const char *warn, va_list params))
>
> These blame to the following commit:
>
> commit 39a3f5ea7c0352a530338d30d4e618f6b4db84e4
> Author: Petr Baudis <pasky@suse.cz>
> Date: Sat Jun 24 04:34:38 2006 +0200
>
> Customizable error handlers
>
> This patch makes the usage(), die() and error() handlers customizable.
> Nothing in the git code itself uses that but many other libgit users
> (like Git.pm) will.
> [...]
>
> So apparently the intent was that they would only be used from outside
> Git. I don't know whether anyone still plans to do that, but they're
> certainly not "just" unused.
I don't think it will be a big deal to remove these functions, though it
does feel like a little bit of a step backwards in the libgit efforts.
There are some programs that already link to Git, like CGit - I wonder
if some of them don't use them (CGit itself doesn't).
--
Petr "Pasky" Baudis
People who take cold baths never have rheumatism, but they have
cold baths.
^ permalink raw reply
* Re: [RFC/PATCH] remove vim syntax highlighting in favor of upstream
From: SZEDER Gábor @ 2008-09-25 12:48 UTC (permalink / raw)
To: Jeff King, vim; +Cc: Shawn O. Pearce, git
In-Reply-To: <20080924195658.GB6816@neumann>
Hi,
OK, so I'm complaining a bit.
On Wed, Sep 24, 2008 at 09:56:58PM +0200, SZEDER Gábor wrote:
> +To install:
> +
> + 1. Copy these files to vim's syntax directory $HOME/.vim/syntax
> + 2. Auto-detect the editing of various git-related filetypes:
> + $ cat >>$HOME/.vimrc <<'EOF'
> + autocmd BufNewFile,BufRead *.git/COMMIT_EDITMSG setf gitcommit
> + autocmd BufNewFile,BufRead *.git/config,.gitconfig setf gitconfig
> + autocmd BufNewFile,BufRead git-rebase-todo setf gitrebase
> + autocmd BufNewFile,BufRead .msg.[0-9]*
> + \ if getline(1) =~ '^From.*# This line is ignored.$' |
> + \ setf gitsendemail |
> + \ endif
> + autocmd BufNewFile,BufRead *.git/**
> + \ if getline(1) =~ '^\x\{40\}\>\|^ref: ' |
> + \ setf git |
> + \ endif
> + EOF
There are issues with this second step. If I append this code to my
.vimrc, then vim sometimes overrides the filetype with conf.
vim has a guessing rule for detecting conf files, which triggers if
one of the first five lines of the file begins with a '#'. So if I
start to write a new commit message or I interactively rebase 4 or
less commits, then this rule triggers and vim overrides the git
filetype with filetype conf. If I do a commit --amend with a long
enough original commit message or an interactive rebase with more than
4 commit, then this rule no more triggers and everything is fine.
But what's really puzzling is that if I insert the above code into
$VIMRUNTIME/filetype.vim (at the spot where it can be found in vim
7.2's filetype.vim), then everything works as expected, git filetypes
are never overridden.
This is not related to the changes in this patch. git's original vim
syntax highlight for commit messages has the exact same behaviour.
The first step is OK: it doesn't matter whether I put git-related
syntax files under $HOME/.vim/syntax/ or under $VIMRUNTIME/syntax/.
I'm using vim 7.1.138 in Ubuntu 8.04.
Anyone have a clue?
Thanks,
Gábor
^ permalink raw reply
* Re: [RFC] gitweb wishlist and TODO list
From: Jakub Narebski @ 2008-09-25 12:23 UTC (permalink / raw)
To: Pedro Melo; +Cc: git, Petr Baudis
In-Reply-To: <CCF9B7B7-4D85-4704-9363-2CE41B048828@simplicidade.org>
Pedro Melo wrote:
> On Sep 25, 2008, at 11:30 AM, Jakub Narebski wrote:
>
> > * Support for FastCGI (via CGI::Fast or FCGI).
> >
> > Unfortunately I don't use FastCGI. This has to be done in a very
> > un-intruisive way, and without performance penalties for "ordinary"
> > CGI and mod_perl.
> >
> > Suggested: input reading and validation refactoring.
>
> Is it ok to require CPAN modules? If yes, then using HTTP::Engine as a
> base could be helpful here.
No, it is not. Some gitweb installations (kernel.org, IIRC) are on
tightly managed machines, where installation is severely restricted.
If it is distributed together with Perl package it is best, if it can
be found in distribution packages it is good, if it can be found in
distribution extras it is quite good, if it can be found in trusted
package repository, it is manageable. Installing untested packages
from CPAN is usually out of the question.
That said...
> It supports standalone deployments as well as FastCGI, CGI, mod_perl,
> POE and others.
>
> And it acts as a very simple HTTP-layer, without any "framework"
> logic.
...if we could make it conditional on HTTP::Engine being installed,
and fallback on current code easily, it could be done, I think, without
problems.
Thanks for the pointer.
> > * Committags support
> >
> > Support expansion of "tags" in commit messages, like gitweb now
> > does for (shortened) SHA-1, converting them to 'object' view link.
> > It should be done in a way to make it easy configurable,
> > preferebly having to configure only variable part, and not having
> > to write whole replacement rule.
> >
> > Possible committags include: _BUG(n)_, bug _#n_, _FEATURE(n),
> > Message-Id, plain text URL e.g. _http://repo.or.cz_, spam
> > protecting of email addresses, "rich text formatting" like *bold*
> > and _underline_, syntax highlighting of signoff lines.
>
> If this part is modular, we can even use a full blown text markup
> tool, like Markdown or Textile, to generate the HTML version of the
> commits.
I don't think it is a good idea. The main target of git commit
messages is command line, so fixed width format is expected. Commit
mesages are also shown in commit tools and history viewers (git-gui,
gitk, QGit) and in intergration with IDE/editors (KDevelop, Eclipse,
Emacs, Vim). Unless unprocessed code doesn't loose anything, I think
that advanced markup is a bad, bad idea.
--
Jakub Narebski
Poland
^ permalink raw reply
* Re: [PATCH] git-submodule: remove unnecessary exits when calling resolve_relative_url
From: Johannes Sixt @ 2008-09-25 12:19 UTC (permalink / raw)
To: David Aguilar; +Cc: gitster, git, johan, spearce, mlevedahl
In-Reply-To: <17c3c33dd7aa6803d7ac046f3e4dc0d5bb4c7234.1222341013.git.davvid@gmail.com>
David Aguilar schrieb:
> resolve_relative_url calls die() when no remote url exists so these calls to
> exit can be removed.
...
> @@ -155,7 +155,7 @@ cmd_add()
> case "$repo" in
> ./*|../*)
> # dereference source url relative to parent's url
> - realrepo=$(resolve_relative_url "$repo") || exit
> + realrepo=$(resolve_relative_url "$repo")
> ;;
Did you test it? The command inside $(...) is run in its own sub-process,
therefore, the die() does not exit the caller, just the sub-process, and
the || exit *is* required.
BTW, I think that || exit is sufficient; you don't need to add another
error message - the one that resolve_relative_url() prints is sufficient.
-- Hannes
^ permalink raw reply
* [PATCH v2] gitk: Update swedish translation.
From: Mikael Magnusson @ 2008-09-25 12:17 UTC (permalink / raw)
To: Peter Krefting; +Cc: Paul Mackerras, Git Mailing List
In-Reply-To: <Pine.LNX.4.64.0809251247450.5683@ds9.cixit.se>
[-- Attachment #1: Type: TEXT/PLAIN, Size: 24540 bytes --]
Signed-off-by: Mikael Magnusson <mikachu@gmail.com>
---
This should be incorporating all the changes we discussed.
po/sv.po | 462 +++++++++++++++++++++++++++++++++----------------------------
1 files changed, 250 insertions(+), 212 deletions(-)
diff --git a/po/sv.po b/po/sv.po
index e1ecfb7..50a508e 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: sv\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-08-03 18:58+0200\n"
+"POT-Creation-Date: 2008-09-24 08:23+0200\n"
-"PO-Revision-Date: 2008-08-03 19:03+0200\n"
+"PO-Revision-Date: 2008-09-25 14:15+0200\n"
"Last-Translator: Mikael Magnusson <mikachu@gmail.com>\n"
"Language-Team: Swedish <sv@li.org>\n"
@@ -16,17 +16,25 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: gitk:102
+#: gitk:113
msgid "Couldn't get list of unmerged files:"
msgstr "Kunde inta hämta lista över ej sammanslagna filer:"
-#: gitk:329
+#: gitk:272
+msgid "Error parsing revisions:"
+msgstr "Fel vid tolkning av revisioner:"
+
+#: gitk:327
+msgid "Error executing --argscmd command:"
+msgstr "Fel vid körning av --argscmd-kommandot:"
+
+#: gitk:340
msgid "No files selected: --merge specified but no files are unmerged."
msgstr ""
"Inga filer valdes: --merge angavs men det finns inga filer som inte har "
"slagits samman."
-#: gitk:332
+#: gitk:343
msgid ""
"No files selected: --merge specified but no unmerged files are within file "
"limit."
@@ -34,257 +42,261 @@ msgstr ""
"Inga filer valdes: --merge angavs men det finns inga filer inom "
"filbegränsningen."
-#: gitk:354
+#: gitk:365 gitk:503
msgid "Error executing git log:"
msgstr "Fel vid körning av git log:"
-#: gitk:369
+#: gitk:378
msgid "Reading"
msgstr "Läser"
-#: gitk:400 gitk:3356
+#: gitk:438 gitk:3433
msgid "Reading commits..."
msgstr "Läser incheckningar..."
-#: gitk:403 gitk:1480 gitk:3359
+#: gitk:441 gitk:1528 gitk:3436
msgid "No commits selected"
msgstr "Inga incheckningar markerade"
-#: gitk:1358
+#: gitk:1399
msgid "Can't parse git log output:"
msgstr "Kan inte tolka utdata från git log:"
-#: gitk:1557
+#: gitk:1605
msgid "No commit information available"
msgstr "Ingen incheckningsinformation är tillgänglig"
-#: gitk:1654 gitk:1676 gitk:3150 gitk:7620 gitk:9149 gitk:9317
+#: gitk:1709 gitk:1731 gitk:3230 gitk:7701 gitk:9230 gitk:9398
msgid "OK"
msgstr "OK"
-#: gitk:1678 gitk:3151 gitk:7296 gitk:7367 gitk:7470 gitk:7516 gitk:7622
-#: gitk:9150 gitk:9318
+#: gitk:1733 gitk:3231 gitk:7377 gitk:7448 gitk:7551 gitk:7597 gitk:7703
+#: gitk:9231 gitk:9399
msgid "Cancel"
msgstr "Avbryt"
-#: gitk:1716
+#: gitk:1771
msgid "File"
msgstr "Arkiv"
-#: gitk:1718
+#: gitk:1773
msgid "Update"
msgstr "Uppdatera"
-#: gitk:1719
+#: gitk:1774
msgid "Reload"
msgstr "Ladda om"
-#: gitk:1720
+#: gitk:1775
msgid "Reread references"
msgstr "Läs om referenser"
-#: gitk:1721
+#: gitk:1776
msgid "List references"
msgstr "Visa referenser"
-#: gitk:1722
+#: gitk:1777
msgid "Quit"
msgstr "Avsluta"
-#: gitk:1724
+#: gitk:1779
msgid "Edit"
msgstr "Redigera"
-#: gitk:1725
+#: gitk:1780
msgid "Preferences"
msgstr "Inställningar"
-#: gitk:1728 gitk:3087
+#: gitk:1783 gitk:3167
msgid "View"
msgstr "Visa"
-#: gitk:1729
+#: gitk:1784
msgid "New view..."
msgstr "Ny vy..."
-#: gitk:1730 gitk:3298 gitk:9932
+#: gitk:1785 gitk:3378 gitk:10030
msgid "Edit view..."
msgstr "Ändra vy..."
-#: gitk:1732 gitk:3299 gitk:9933
+#: gitk:1787 gitk:3379 gitk:10031
msgid "Delete view"
msgstr "Ta bort vy"
-#: gitk:1734
+#: gitk:1789
msgid "All files"
msgstr "Alla filer"
-#: gitk:1738
+#: gitk:1793
msgid "Help"
msgstr "Hjälp"
-#: gitk:1739 gitk:2399
+#: gitk:1794 gitk:2458
msgid "About gitk"
msgstr "Om gitk"
-#: gitk:1740
+#: gitk:1795
msgid "Key bindings"
msgstr "Tangentbordsbindningar"
-#: gitk:1797
+#: gitk:1852
msgid "SHA1 ID: "
msgstr "SHA1-id: "
-#: gitk:1828
+#: gitk:1883
msgid "Row"
msgstr "Rad"
-#: gitk:1859
+#: gitk:1914
msgid "Find"
msgstr "Sök"
-#: gitk:1860
+#: gitk:1915
msgid "next"
msgstr "nästa"
-#: gitk:1861
+#: gitk:1916
msgid "prev"
msgstr "föreg"
-#: gitk:1862
+#: gitk:1917
msgid "commit"
msgstr "incheckning"
-#: gitk:1865 gitk:1867 gitk:3511 gitk:3534 gitk:3558 gitk:5441 gitk:5512
+#: gitk:1920 gitk:1922 gitk:3588 gitk:3611 gitk:3635 gitk:5521 gitk:5592
msgid "containing:"
msgstr "som innehåller:"
-#: gitk:1868 gitk:2866 gitk:2871 gitk:3586
+#: gitk:1923 gitk:2925 gitk:2930 gitk:3663
msgid "touching paths:"
msgstr "som rör sökväg:"
-#: gitk:1869 gitk:3591
+#: gitk:1924 gitk:3668
msgid "adding/removing string:"
msgstr "som lägger/till tar bort sträng:"
-#: gitk:1878 gitk:1880
+#: gitk:1933 gitk:1935
msgid "Exact"
msgstr "Exakt"
-#: gitk:1880 gitk:3667 gitk:5409
+#: gitk:1935 gitk:3744 gitk:5489
msgid "IgnCase"
msgstr "IgnVersaler"
-#: gitk:1880 gitk:3560 gitk:3665 gitk:5405
+#: gitk:1935 gitk:3637 gitk:3742 gitk:5485
msgid "Regexp"
msgstr "Reg.uttr."
-#: gitk:1882 gitk:1883 gitk:3686 gitk:3716 gitk:3723 gitk:5532 gitk:5599
+#: gitk:1937 gitk:1938 gitk:3763 gitk:3793 gitk:3800 gitk:5612 gitk:5679
msgid "All fields"
msgstr "Alla fält"
-#: gitk:1883 gitk:3684 gitk:3716 gitk:5471
+#: gitk:1938 gitk:3761 gitk:3793 gitk:5551
msgid "Headline"
msgstr "Rubrik"
-#: gitk:1884 gitk:3684 gitk:5471 gitk:5599 gitk:6000
+#: gitk:1939 gitk:3761 gitk:5551 gitk:5679 gitk:6080
msgid "Comments"
msgstr "Kommentarer"
-#: gitk:1884 gitk:3684 gitk:3688 gitk:3723 gitk:5471 gitk:5936 gitk:7142
-#: gitk:7157
+#: gitk:1939 gitk:3761 gitk:3765 gitk:3800 gitk:5551 gitk:6016 gitk:7223
+#: gitk:7238
msgid "Author"
msgstr "Författare"
-#: gitk:1884 gitk:3684 gitk:5471 gitk:5938
+#: gitk:1939 gitk:3761 gitk:5551 gitk:6018
msgid "Committer"
msgstr "Incheckare"
-#: gitk:1913
+#: gitk:1968
msgid "Search"
msgstr "Sök"
-#: gitk:1920
+#: gitk:1975
msgid "Diff"
msgstr "Diff"
-#: gitk:1922
+#: gitk:1977
msgid "Old version"
msgstr "Gammal version"
-#: gitk:1924
+#: gitk:1979
msgid "New version"
msgstr "Ny version"
-#: gitk:1926
+#: gitk:1981
msgid "Lines of context"
msgstr "Rader sammanhang"
-#: gitk:1936
+#: gitk:1991
msgid "Ignore space change"
msgstr "Ignorera ändringar i blanksteg"
-#: gitk:1994
+#: gitk:2049
msgid "Patch"
msgstr "Patch"
-#: gitk:1996
+#: gitk:2051
msgid "Tree"
msgstr "Träd"
-#: gitk:2121 gitk:2136 gitk:7211
+#: gitk:2178 gitk:2193 gitk:7292
msgid "Diff this -> selected"
msgstr "Diff denna -> markerad"
-#: gitk:2123 gitk:2138 gitk:7212
+#: gitk:2180 gitk:2195 gitk:7293
msgid "Diff selected -> this"
msgstr "Diff markerad -> denna"
-#: gitk:2125 gitk:2140 gitk:7213
+#: gitk:2182 gitk:2197 gitk:7294
msgid "Make patch"
msgstr "Skapa patch"
-#: gitk:2126 gitk:7351
+#: gitk:2183 gitk:7432
msgid "Create tag"
msgstr "Skapa tagg"
-#: gitk:2127 gitk:7450
+#: gitk:2184 gitk:7531
msgid "Write commit to file"
msgstr "Skriv incheckning till fil"
-#: gitk:2128 gitk:7504
+#: gitk:2185 gitk:7585
msgid "Create new branch"
msgstr "Skapa ny gren"
-#: gitk:2129
+#: gitk:2186
msgid "Cherry-pick this commit"
msgstr "Plocka denna incheckning"
-#: gitk:2131
+#: gitk:2188
msgid "Reset HEAD branch to here"
msgstr "Återställ HEAD-grenen hit"
-#: gitk:2147
+#: gitk:2204
msgid "Check out this branch"
msgstr "Checka ut denna gren"
-#: gitk:2149
+#: gitk:2206
msgid "Remove this branch"
msgstr "Ta bort denna gren"
-#: gitk:2155
+#: gitk:2212
msgid "Highlight this too"
msgstr "Markera även detta"
-#: gitk:2157
+#: gitk:2214
msgid "Highlight this only"
msgstr "Markera bara detta"
-#: gitk:2159
+#: gitk:2216
msgid "External diff"
msgstr "Extern diff"
-#: gitk:2400
+#: gitk:2218
+msgid "Blame parent commit"
+msgstr "Annotera föregående incheckning"
+
+#: gitk:2459
msgid ""
"\n"
"Gitk - a commit viewer for git\n"
@@ -300,427 +312,453 @@ msgstr ""
"\n"
"Använd och vidareförmedla enligt villkoren i GNU General Public License"
-#: gitk:2408 gitk:2469 gitk:7799
+#: gitk:2467 gitk:2528 gitk:7880
msgid "Close"
msgstr "Stäng"
-#: gitk:2427
+#: gitk:2486
msgid "Gitk key bindings"
msgstr "Tangentbordsbindningar för Gitk"
-#: gitk:2429
+#: gitk:2488
msgid "Gitk key bindings:"
msgstr "Tangentbordsbindningar för Gitk:"
-#: gitk:2431
+#: gitk:2490
#, tcl-format
msgid "<%s-Q>\t\tQuit"
msgstr "<%s-Q>\t\tAvsluta"
-#: gitk:2432
+#: gitk:2491
msgid "<Home>\t\tMove to first commit"
msgstr "<Home>\t\tGå till första incheckning"
-#: gitk:2433
+#: gitk:2492
msgid "<End>\t\tMove to last commit"
msgstr "<End>\t\tGå till sista incheckning"
-#: gitk:2434
+#: gitk:2493
msgid "<Up>, p, i\tMove up one commit"
msgstr "<Upp>, p, i\tGå en incheckning upp"
-#: gitk:2435
+#: gitk:2494
msgid "<Down>, n, k\tMove down one commit"
msgstr "<Ned>, n, k\tGå en incheckning ned"
-#: gitk:2436
+#: gitk:2495
msgid "<Left>, z, j\tGo back in history list"
msgstr "<Vänster>, z, j\tGå bakåt i historiken"
-#: gitk:2437
+#: gitk:2496
msgid "<Right>, x, l\tGo forward in history list"
msgstr "<Höger>, x, l\tGå framåt i historiken"
-#: gitk:2438
+#: gitk:2497
msgid "<PageUp>\tMove up one page in commit list"
msgstr "<PageUp>\tGå upp en sida i incheckningslistan"
-#: gitk:2439
+#: gitk:2498
msgid "<PageDown>\tMove down one page in commit list"
msgstr "<PageDown>\tGå ned en sida i incheckningslistan"
-#: gitk:2440
+#: gitk:2499
#, tcl-format
msgid "<%s-Home>\tScroll to top of commit list"
msgstr "<%s-Home>\tRulla till början av incheckningslistan"
-#: gitk:2441
+#: gitk:2500
#, tcl-format
msgid "<%s-End>\tScroll to bottom of commit list"
msgstr "<%s-End>\tRulla till slutet av incheckningslistan"
-#: gitk:2442
+#: gitk:2501
#, tcl-format
msgid "<%s-Up>\tScroll commit list up one line"
msgstr "<%s-Upp>\tRulla incheckningslistan upp ett steg"
-#: gitk:2443
+#: gitk:2502
#, tcl-format
msgid "<%s-Down>\tScroll commit list down one line"
msgstr "<%s-Ned>\tRulla incheckningslistan ned ett steg"
-#: gitk:2444
+#: gitk:2503
#, tcl-format
msgid "<%s-PageUp>\tScroll commit list up one page"
msgstr "<%s-PageUp>\tRulla incheckningslistan upp en sida"
-#: gitk:2445
+#: gitk:2504
#, tcl-format
msgid "<%s-PageDown>\tScroll commit list down one page"
msgstr "<%s-PageDown>\tRulla incheckningslistan ned en sida"
-#: gitk:2446
+#: gitk:2505
msgid "<Shift-Up>\tFind backwards (upwards, later commits)"
msgstr "<Skift-Upp>\tSök bakåt (uppåt, senare incheckningar)"
-#: gitk:2447
+#: gitk:2506
msgid "<Shift-Down>\tFind forwards (downwards, earlier commits)"
msgstr "<Skift-Ned>\tSök framåt (nedåt, tidigare incheckningar)"
-#: gitk:2448
+#: gitk:2507
msgid "<Delete>, b\tScroll diff view up one page"
msgstr "<Delete>, b\tRulla diffvisningen upp en sida"
-#: gitk:2449
+#: gitk:2508
msgid "<Backspace>\tScroll diff view up one page"
msgstr "<Baksteg>\tRulla diffvisningen upp en sida"
-#: gitk:2450
+#: gitk:2509
msgid "<Space>\t\tScroll diff view down one page"
msgstr "<Blanksteg>\tRulla diffvisningen ned en sida"
-#: gitk:2451
+#: gitk:2510
msgid "u\t\tScroll diff view up 18 lines"
msgstr "u\t\tRulla diffvisningen upp 18 rader"
-#: gitk:2452
+#: gitk:2511
msgid "d\t\tScroll diff view down 18 lines"
msgstr "d\t\tRulla diffvisningen ned 18 rader"
-#: gitk:2453
+#: gitk:2512
#, tcl-format
msgid "<%s-F>\t\tFind"
msgstr "<%s-F>\t\tSök"
-#: gitk:2454
+#: gitk:2513
#, tcl-format
msgid "<%s-G>\t\tMove to next find hit"
msgstr "<%s-G>\t\tGå till nästa sökträff"
-#: gitk:2455
+#: gitk:2514
msgid "<Return>\tMove to next find hit"
msgstr "<Return>\t\tGå till nästa sökträff"
-#: gitk:2456
+#: gitk:2515
msgid "/\t\tMove to next find hit, or redo find"
msgstr "/\t\tGå till nästa sökträff, eller sök på nytt"
-#: gitk:2457
+#: gitk:2516
msgid "?\t\tMove to previous find hit"
msgstr "?\t\tGå till föregående sökträff"
-#: gitk:2458
+#: gitk:2517
msgid "f\t\tScroll diff view to next file"
msgstr "f\t\tRulla diffvisningen till nästa fil"
-#: gitk:2459
+#: gitk:2518
#, tcl-format
msgid "<%s-S>\t\tSearch for next hit in diff view"
msgstr "<%s-S>\t\tGå till nästa sökträff i diffvisningen"
-#: gitk:2460
+#: gitk:2519
#, tcl-format
msgid "<%s-R>\t\tSearch for previous hit in diff view"
msgstr "<%s-R>\t\tGå till föregående sökträff i diffvisningen"
-#: gitk:2461
+#: gitk:2520
#, tcl-format
msgid "<%s-KP+>\tIncrease font size"
msgstr "<%s-Num+>\tÖka teckenstorlek"
-#: gitk:2462
+#: gitk:2521
#, tcl-format
msgid "<%s-plus>\tIncrease font size"
msgstr "<%s-plus>\tÖka teckenstorlek"
-#: gitk:2463
+#: gitk:2522
#, tcl-format
msgid "<%s-KP->\tDecrease font size"
msgstr "<%s-Num->\tMinska teckenstorlek"
-#: gitk:2464
+#: gitk:2523
#, tcl-format
msgid "<%s-minus>\tDecrease font size"
msgstr "<%s-minus>\tMinska teckenstorlek"
-#: gitk:2465
+#: gitk:2524
msgid "<F5>\t\tUpdate"
msgstr "<F5>\t\tUppdatera"
-#: gitk:3091
+#: gitk:2940
+#, tcl-format
+msgid "Error getting \"%s\" from %s:"
+msgstr "Fel vid hämtning av \"%s\" från %s:"
+
+#: gitk:2997 gitk:3006
+#, tcl-format
+msgid "Error creating temporary directory %s:"
+msgstr "Fel när tillfällig katalog %s skulle skapas:"
+
+#: gitk:3019
+msgid "command failed:"
+msgstr "kommando misslyckades:"
+
+#: gitk:3039
+msgid "No such commit"
+msgstr "Ingen sådan incheckning finns"
+
+#: gitk:3044
+msgid "git gui blame: command failed:"
+msgstr "git gui blame: kommandot misslyckades:"
+
+#: gitk:3053
+msgid "External diff viewer failed:"
+msgstr "Externt diff-verktyg misslyckades:"
+
+#: gitk:3171
msgid "Gitk view definition"
msgstr "Definition av Gitk-vy"
-#: gitk:3116
+#: gitk:3196
msgid "Name"
msgstr "Namn"
-#: gitk:3119
+#: gitk:3199
msgid "Remember this view"
msgstr "Spara denna vy"
-#: gitk:3123
+#: gitk:3203
msgid "Commits to include (arguments to git log):"
msgstr "Incheckningar att ta med (argument till git log):"
-#: gitk:3130
+#: gitk:3210
msgid "Command to generate more commits to include:"
msgstr "Kommando för att generera fler incheckningar att ta med:"
-#: gitk:3137
+#: gitk:3217
msgid "Enter files and directories to include, one per line:"
msgstr "Ange filer och kataloger att ta med, en per rad:"
-#: gitk:3184
+#: gitk:3264
msgid "Error in commit selection arguments:"
msgstr "Fel i argument för val av incheckningar:"
-#: gitk:3238 gitk:3290 gitk:3736 gitk:3750 gitk:4951 gitk:9896 gitk:9897
+#: gitk:3318 gitk:3370 gitk:3813 gitk:3827 gitk:5031 gitk:9994 gitk:9995
msgid "None"
msgstr "Inget"
-#: gitk:3684 gitk:5471 gitk:7144 gitk:7159
+#: gitk:3761 gitk:5551 gitk:7225 gitk:7240
msgid "Date"
msgstr "Datum"
-#: gitk:3684 gitk:5471
+#: gitk:3761 gitk:5551
msgid "CDate"
msgstr "Skapat datum"
-#: gitk:3833 gitk:3838
+#: gitk:3910 gitk:3915
msgid "Descendant"
msgstr "Avkomling"
-#: gitk:3834
+#: gitk:3911
msgid "Not descendant"
msgstr "Inte avkomling"
-#: gitk:3841 gitk:3846
+#: gitk:3918 gitk:3923
msgid "Ancestor"
msgstr "Förfader"
-#: gitk:3842
+#: gitk:3919
msgid "Not ancestor"
msgstr "Inte förfader"
-#: gitk:4078
+#: gitk:4158
msgid "Local changes checked in to index but not committed"
msgstr "Lokala ändringar sparade i indexet men inte incheckade"
-#: gitk:4111
+#: gitk:4191
msgid "Local uncommitted changes, not checked in to index"
msgstr "Lokala ändringar, ej sparade i indexet"
-#: gitk:5440
+#: gitk:5520
msgid "Searching"
msgstr "Söker"
-#: gitk:5940
+#: gitk:6020
msgid "Tags:"
msgstr "Taggar:"
-#: gitk:5957 gitk:5963 gitk:7137
+#: gitk:6037 gitk:6043 gitk:7218
msgid "Parent"
msgstr "Förälder"
-#: gitk:5968
+#: gitk:6048
msgid "Child"
msgstr "Barn"
-#: gitk:5977
+#: gitk:6057
msgid "Branch"
msgstr "Gren"
-#: gitk:5980
+#: gitk:6060
msgid "Follows"
msgstr "Följer"
-#: gitk:5983
+#: gitk:6063
msgid "Precedes"
msgstr "Föregår"
-#: gitk:6267
+#: gitk:6347
msgid "Error getting merge diffs:"
msgstr "Fel vid hämtning av sammanslagningsdiff:"
-#: gitk:6970
+#: gitk:7051
msgid "Goto:"
msgstr "Gå till:"
-#: gitk:6972
+#: gitk:7053
msgid "SHA1 ID:"
msgstr "SHA1-id:"
-#: gitk:6991
+#: gitk:7072
#, tcl-format
msgid "Short SHA1 id %s is ambiguous"
msgstr "Förkortat SHA1-id %s är tvetydigt"
-#: gitk:7003
+#: gitk:7084
#, tcl-format
msgid "SHA1 id %s is not known"
msgstr "SHA-id:t %s är inte känt"
-#: gitk:7005
+#: gitk:7086
#, tcl-format
msgid "Tag/Head %s is not known"
msgstr "Tagg/huvud %s är okänt"
-#: gitk:7147
+#: gitk:7228
msgid "Children"
msgstr "Barn"
-#: gitk:7204
+#: gitk:7285
#, tcl-format
msgid "Reset %s branch to here"
msgstr "Återställ grenen %s hit"
-#: gitk:7206
+#: gitk:7287
msgid "Detached head: can't reset"
msgstr "Frånkopplad head: kan inte återställa"
-#: gitk:7238
+#: gitk:7319
msgid "Top"
msgstr "Topp"
-#: gitk:7239
+#: gitk:7320
msgid "From"
msgstr "Från"
-#: gitk:7244
+#: gitk:7325
msgid "To"
msgstr "Till"
-#: gitk:7267
+#: gitk:7348
msgid "Generate patch"
msgstr "Generera patch"
-#: gitk:7269
+#: gitk:7350
msgid "From:"
msgstr "Från:"
-#: gitk:7278
+#: gitk:7359
msgid "To:"
msgstr "Till:"
-#: gitk:7287
+#: gitk:7368
msgid "Reverse"
msgstr "Vänd"
-#: gitk:7289 gitk:7464
+#: gitk:7370 gitk:7545
msgid "Output file:"
msgstr "Utdatafil:"
-#: gitk:7295
+#: gitk:7376
msgid "Generate"
msgstr "Generera"
-#: gitk:7331
+#: gitk:7412
msgid "Error creating patch:"
msgstr "Fel vid generering av patch:"
-#: gitk:7353 gitk:7452 gitk:7506
+#: gitk:7434 gitk:7533 gitk:7587
msgid "ID:"
msgstr "Id:"
-#: gitk:7362
+#: gitk:7443
msgid "Tag name:"
msgstr "Taggnamn:"
-#: gitk:7366 gitk:7515
+#: gitk:7447 gitk:7596
msgid "Create"
msgstr "Skapa"
-#: gitk:7381
+#: gitk:7462
msgid "No tag name specified"
msgstr "Inget taggnamn angavs"
-#: gitk:7385
+#: gitk:7466
#, tcl-format
msgid "Tag \"%s\" already exists"
msgstr "Taggen \"%s\" finns redan"
-#: gitk:7391
+#: gitk:7472
msgid "Error creating tag:"
-msgstr "Fel vid skapande av tagg:"
+msgstr "Fel n? tagg skulle skapas:"
-#: gitk:7461
+#: gitk:7542
msgid "Command:"
msgstr "Kommando:"
-#: gitk:7469
+#: gitk:7550
msgid "Write"
msgstr "Skriv"
-#: gitk:7485
+#: gitk:7566
msgid "Error writing commit:"
msgstr "Fel vid skrivning av incheckning:"
-#: gitk:7511
+#: gitk:7592
msgid "Name:"
msgstr "Namn:"
-#: gitk:7530
+#: gitk:7611
msgid "Please specify a name for the new branch"
msgstr "Ange ett namn för den nya grenen"
-#: gitk:7559
+#: gitk:7640
#, tcl-format
msgid "Commit %s is already included in branch %s -- really re-apply it?"
msgstr ""
"Incheckningen %s finns redan på grenen %s -- skall den verkligen appliceras "
"på nytt?"
-#: gitk:7564
+#: gitk:7645
msgid "Cherry-picking"
msgstr "Plockar"
-#: gitk:7576
+#: gitk:7657
msgid "No changes committed"
msgstr "Inga ändringar incheckade"
-#: gitk:7601
+#: gitk:7682
msgid "Confirm reset"
msgstr "Bekräfta återställning"
-#: gitk:7603
+#: gitk:7684
#, tcl-format
msgid "Reset branch %s to %s?"
msgstr "Återställa grenen %s till %s?"
-#: gitk:7607
+#: gitk:7688
msgid "Reset type:"
msgstr "Typ av återställning:"
-#: gitk:7611
+#: gitk:7692
msgid "Soft: Leave working tree and index untouched"
msgstr "Mjuk: Rör inte utcheckning och index"
-#: gitk:7614
+#: gitk:7695
msgid "Mixed: Leave working tree untouched, reset index"
msgstr "Blandad: Rör inte utcheckning, återställ index"
-#: gitk:7617
+#: gitk:7698
msgid ""
"Hard: Reset working tree and index\n"
"(discard ALL local changes)"
@@ -728,19 +766,19 @@ msgstr ""
"Hård: Återställ utcheckning och index\n"
"(förkastar ALLA lokala ändringar)"
-#: gitk:7633
+#: gitk:7714
msgid "Resetting"
msgstr "Återställer"
-#: gitk:7690
+#: gitk:7771
msgid "Checking out"
msgstr "Checkar ut"
-#: gitk:7741
+#: gitk:7822
msgid "Cannot delete the currently checked-out branch"
msgstr "Kan inte ta bort den just nu utcheckade grenen"
-#: gitk:7747
+#: gitk:7828
#, tcl-format
msgid ""
"The commits on branch %s aren't on any other branch.\n"
@@ -749,16 +787,16 @@ msgstr ""
"Incheckningarna på grenen %s existerar inte på någon annan gren.\n"
"Vill du verkligen ta bort grenen %s?"
-#: gitk:7778
+#: gitk:7859
#, tcl-format
msgid "Tags and heads: %s"
msgstr "Taggar och huvuden: %s"
-#: gitk:7792
+#: gitk:7873
msgid "Filter"
msgstr "Filter"
-#: gitk:8086
+#: gitk:8167
msgid ""
"Error reading commit topology information; branch and preceding/following "
"tag information will be incomplete."
@@ -766,125 +804,125 @@ msgstr ""
"Fel vid läsning av information om incheckningstopologi; information om "
"grenar och föregående/senare taggar kommer inte vara komplett."
-#: gitk:9072
+#: gitk:9153
msgid "Tag"
msgstr "Tagg"
-#: gitk:9072
+#: gitk:9153
msgid "Id"
msgstr "Id"
-#: gitk:9118
+#: gitk:9199
msgid "Gitk font chooser"
msgstr "Teckensnittsväljare för Gitk"
-#: gitk:9135
+#: gitk:9216
msgid "B"
msgstr "F"
-#: gitk:9138
+#: gitk:9219
msgid "I"
msgstr "K"
-#: gitk:9231
+#: gitk:9312
msgid "Gitk preferences"
msgstr "Inställningar för Gitk"
-#: gitk:9232
+#: gitk:9313
msgid "Commit list display options"
msgstr "Alternativ för incheckningslistvy"
-#: gitk:9235
+#: gitk:9316
msgid "Maximum graph width (lines)"
msgstr "Maximal grafbredd (rader)"
-#: gitk:9239
+#: gitk:9320
#, tcl-format
msgid "Maximum graph width (% of pane)"
msgstr "Maximal grafbredd (% av ruta)"
-#: gitk:9244
+#: gitk:9325
msgid "Show local changes"
msgstr "Visa lokala ändringar"
-#: gitk:9249
+#: gitk:9330
msgid "Auto-select SHA1"
msgstr "Välj SHA1 automatiskt"
-#: gitk:9254
+#: gitk:9335
msgid "Diff display options"
msgstr "Alternativ för diffvy"
-#: gitk:9256
+#: gitk:9337
msgid "Tab spacing"
msgstr "Blanksteg för tabulatortecken"
-#: gitk:9260
+#: gitk:9341
msgid "Display nearby tags"
msgstr "Visa närliggande taggar"
-#: gitk:9265
+#: gitk:9346
msgid "Limit diffs to listed paths"
msgstr "Begränsa diff till listade sökvägar"
-#: gitk:9272
+#: gitk:9353
msgid "External diff tool"
msgstr "Externt diff-verktyg"
-#: gitk:9274
+#: gitk:9355
msgid "Choose..."
msgstr "Välj..."
-#: gitk:9279
+#: gitk:9360
msgid "Colors: press to choose"
msgstr "Färger: tryck för att välja"
-#: gitk:9282
+#: gitk:9363
msgid "Background"
msgstr "Bakgrund"
-#: gitk:9286
+#: gitk:9367
msgid "Foreground"
msgstr "Förgrund"
-#: gitk:9290
+#: gitk:9371
msgid "Diff: old lines"
msgstr "Diff: gamla rader"
-#: gitk:9295
+#: gitk:9376
msgid "Diff: new lines"
msgstr "Diff: nya rader"
-#: gitk:9300
+#: gitk:9381
msgid "Diff: hunk header"
msgstr "Diff: delhuvud"
-#: gitk:9306
+#: gitk:9387
msgid "Select bg"
msgstr "Markerad bakgrund"
-#: gitk:9310
+#: gitk:9391
msgid "Fonts: press to choose"
msgstr "Teckensnitt: tryck för att välja"
-#: gitk:9312
+#: gitk:9393
msgid "Main font"
msgstr "Huvudteckensnitt"
-#: gitk:9313
+#: gitk:9394
msgid "Diff display font"
msgstr "Teckensnitt för diffvisning"
-#: gitk:9314
+#: gitk:9395
msgid "User interface font"
msgstr "Teckensnitt för användargränssnitt"
-#: gitk:9339
+#: gitk:9420
#, tcl-format
msgid "Gitk: choose color for %s"
msgstr "Gitk: välj färg för %s"
-#: gitk:9720
+#: gitk:9801
msgid ""
"Sorry, gitk cannot run with this version of Tcl/Tk.\n"
" Gitk requires at least Tcl/Tk 8.4."
@@ -892,24 +930,24 @@ msgstr ""
"Gitk kan tyvärr inte köra med denna version av Tcl/Tk.\n"
" Gitk kräver åtminstone Tcl/Tk 8.4."
-#: gitk:9812
+#: gitk:9900
msgid "Cannot find a git repository here."
msgstr "Hittar inget gitk-arkiv här."
-#: gitk:9816
+#: gitk:9904
#, tcl-format
msgid "Cannot find the git directory \"%s\"."
msgstr "Hittar inte git-katalogen \"%s\"."
-#: gitk:9853
+#: gitk:9951
#, tcl-format
msgid "Ambiguous argument '%s': both revision and filename"
msgstr "Tvetydigt argument \"%s\": både revision och filnamn"
-#: gitk:9865
+#: gitk:9963
msgid "Bad arguments to gitk:"
msgstr "Felaktiga argument till gitk:"
-#: gitk:9925
+#: gitk:10023
msgid "Command line"
msgstr "Kommandorad"
--
1.6.0.2.GIT
On Thu, 25 Sep 2008, Peter Krefting wrote:
> Mikael Magnusson:
>
>> Want me to change that one too?
>
> Yeah, most probably should do that, if we change the other.
>
>> I personally think "Fel vid skapande av ~"is better than "Fel när ~
>> skulle skapas" but we should probably decide on one or the other :).
>
> as long as it is consistent, it should probably be good enough.
>
>> -- Mikael Magnusson???{.n?+???????+%?????ÿÿ\x17??w??{.n?+???????^n?r??z?\x1a??h????&???z??z?ÿÿ?+??+zf???h???~????i????????z_?\x0f?j:+v???)ÿÿ?m
>
> Something weird is happening with your e-mail messages, not sure if it
> is on your end or mine...
I'll try alpine instead.
--
Mikael Magnusson
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox