* Re: Git User's Survey 2007 summary - git homepage improvements
From: Petr Baudis @ 2007-10-17 12:50 UTC (permalink / raw)
To: Jonas Fonseca
Cc: Shawn O. Pearce, Jan Hudec, Frank Lichtenheld, Jakub Narebski,
git
In-Reply-To: <20071017111136.GB23417@diku.dk>
On Wed, Oct 17, 2007 at 01:11:36PM +0200, Jonas Fonseca wrote:
> If the list decides that it could be a better official name or simply an
> alias (currently the case if I configured it correctly) to git.or.cz (or
> whatever the list comes up with) I will gladly act as a domain sponsor.
I have configured it on my side too. git-scm.org now works. Thanks!
I'd have personally preferred git-vcs.org, but git-scm.org is cool too.
:-)
--
Petr "Pasky" Baudis
Early to rise and early to bed makes a male healthy and wealthy and dead.
-- James Thurber
^ permalink raw reply
* Re: git update index question
From: Lars Hjemli @ 2007-10-17 12:49 UTC (permalink / raw)
To: Gonzalo Garramuno; +Cc: git
In-Reply-To: <4715E2AB.4030900@filmaura.com>
On 10/17/07, Gonzalo Garramuno <gga@filmaura.com> wrote:
> what's the proper way to rebuild git's index file for all the files that
> were to be committed but weren't due to the abort.
Have you tried 'git commit -a'? It will run update-index on all
modified files prior to executing the hook.
Btw: If you want to inspect your changes for offending whitespace,
'git diff --color' and 'git diff --cached --color' are your friends.
And if you give up, there is also 'git commit -a --no-verify'.
--
larsh
^ permalink raw reply
* Re: Git User's Survey 2007 summary - git homepage improvements
From: Petr Baudis @ 2007-10-17 12:47 UTC (permalink / raw)
To: Jan Hudec; +Cc: Frank Lichtenheld, Jakub Narebski, git
In-Reply-To: <20071017000526.GG18279@machine.or.cz>
On Wed, Oct 17, 2007 at 02:05:26AM +0200, Petr Baudis wrote:
> On Tue, Oct 16, 2007 at 10:12:47PM +0200, Jan Hudec wrote:
> > Note, that none of the other vcs' have a homepage at theirname.org --
> > subversion is svn.tigris.org, bazaar is bazaaz-vcs.org, mercurial is
> > www.selenic.com/mercurial, svk is svk.bestpractical.com, monotone is
> > monotone.ca. So git-vcs.org would be quite good.
>
> If someone trustworthy in the community has the resources to sponsor the
> domain, I will only be happy and gladly set it up on my side (I can run
> the nameservers myself too, if required). But I don't have the
> resources for registering the domain myself, unfortunately.
Ok, it turns out that I can get a domain arranged even for free, so if
someone has some fancy idea...
I wonder who took git-vcs.org. :-( Maybe some evil competing VCS? ;-)
--
Petr "Pasky" Baudis
Early to rise and early to bed makes a male healthy and wealthy and dead.
-- James Thurber
^ permalink raw reply
* Re: [PATCH 2/2] Quoting paths in tests
From: Johannes Sixt @ 2007-10-17 11:32 UTC (permalink / raw)
To: Jonathan del Strother; +Cc: git, Jonathan del Strother
In-Reply-To: <11926134961275-git-send-email-maillist@steelskies.com>
Jonathan del Strother schrieb:
> --- a/t/lib-git-svn.sh
> +++ b/t/lib-git-svn.sh
> @@ -25,7 +25,7 @@ perl -w -e "
> use SVN::Core;
> use SVN::Repos;
> \$SVN::Core::VERSION gt '1.1.0' or exit(42);
> -system(qw/svnadmin create --fs-type fsfs/, '$svnrepo') == 0 or exit(41);
> +system(qw/svnadmin create --fs-type fsfs/, \"$svnrepo\") == 0 or exit(41);
Here you have to work harder: The reason is that this is part of a perl
expression (as opposed to an eval'd string), which does not have access to
$svnrepo of the shell by which it is invoked. The original version failed if
there were single-quotes in $svnrepo, the new version fails if it contains
double-quotes.
> " >&3 2>&4
> - svn import -m 'import for git-svn' . $svnrepo >/dev/null &&
> + svn import -m 'import for git-svn' . \"$svnrepo\" >/dev/null &&
This must be
svn import -m 'import for git-svn' . \"\$svnrepo\" >/dev/null &&
to be safe. Your version would break with names with double-quotes, because
$svnrepo would be expanded and then eval'd inside test_expect_*. This error
recurs numerous times until the end of the patch.
May I recommend that you run the test suite in a directory named like this:
$ mkdir \"\ \$GIT_DIR\ \'
$ ls
" $GIT_DIR '
> - ( mkdir -p $GIT_DIR/svn/\$ref/info/ &&
> - echo $svnrepo\$path > $GIT_DIR/svn/\$ref/info/url ) || exit 1;
> + ( mkdir -p \"$GIT_DIR\"/svn/\$ref/info/ &&
> + echo \"$svnrepo\"\$path > \"$GIT_DIR\"/svn/\$ref/info/url ) || exit 1;
I assume $path is under control of the test script, otherwise it must be
inside the double-quotes, too.
> test_expect_success ".rev_db auto-converted to .rev_db.UUID" "
> git-svn fetch -i trunk &&
> - expect=$GIT_DIR/svn/trunk/.rev_db.* &&
> + expect=\"\`find \"\$GIT_DIR\"/svn/trunk/ -name '.rev_db.*'\`\" &&
Why is this trickery with find needed? Isn't it easier to put the whole test
case in single-quotes instead?
-- Hannes
^ permalink raw reply
* Re: On Tabs and Spaces
From: Andy Parkins @ 2007-10-17 11:32 UTC (permalink / raw)
To: git; +Cc: David
In-Reply-To: <402731c90710162041q457c7dd3tf906ba0c6faf29ca@mail.gmail.com>
On Wednesday 2007 October 17, David wrote:
> The last two are extremely useful, especially if you're hacking on
> python. That's
> listchars=(less-than)tab(greater-than)(colon)(dot)(backslash)(space)
> (don't forget the space!).
On the subject of high-ascii chars. Here's my favourite for your .vimrc
execute 'set listchars+=tab:'.nr2char(187).nr2char(183)
187 is the "significantly greater than" symbol and 183 is a central dot. i.e.
every character of a tab is non-space. The actual characters used aren't
actually the point I wanted to make; the thing here is that two non-space
characters are used, so every column occupied by the tab is visible - this
makes it very easy to see where tabs end and spaces begin.
Andy
--
Dr Andy Parkins, M Eng (hons), MIET
andyparkins@gmail.com
^ permalink raw reply
* Re: On Tabs and Spaces
From: Michael Witten @ 2007-10-17 11:23 UTC (permalink / raw)
To: Nikolai Weibull; +Cc: git
In-Reply-To: <dbfc82860710170321l458ebd1cr6bf619cef9bb7300@mail.gmail.com>
On 17 Oct 2007, at 6:21:30 AM, Nikolai Weibull wrote:
> According to this calculation the waste is 47808782 bytes, or about
> 45.6 MiB, for 8-spaces-wide tabs.
I concede my calculation was crude.
Interestingly, modifying my calculation to look
for tabs at the beginning of the line gives a
similar result:
# calculates the extra space required to
# use the given number of spaces/tab.
size()
{
count=`grep -RIo "^\`printf \"\t\"\`" . | wc -l`;
perl -e "print $count*$(($1-1))/1024/1024 . \" MiB\n\"";
}
size 8; => 49.7416791915894 MiB
and for git:
size 8; => 1.25082969665527 MiB
Anyway, thanks for the neat script.
mfwitten
^ permalink raw reply
* Re: Git User's Survey 2007 summary - git homepage improvements
From: Jonas Fonseca @ 2007-10-17 11:11 UTC (permalink / raw)
To: Shawn O. Pearce
Cc: Petr Baudis, Jan Hudec, Frank Lichtenheld, Jakub Narebski, git
In-Reply-To: <20071017002648.GH13801@spearce.org>
Shawn O. Pearce <spearce@spearce.org> wrote Tue, Oct 16, 2007:
> Petr Baudis <pasky@suse.cz> wrote:
> > On Tue, Oct 16, 2007 at 10:12:47PM +0200, Jan Hudec wrote:
> > > On Mon, Oct 15, 2007 at 00:56:18 +0200, Frank Lichtenheld wrote:
> > > > On Mon, Oct 15, 2007 at 12:05:22AM +0200, Jakub Narebski wrote:
> > > > > Generic:
> > > > > # Dedicated domain name / site name, e.g. git.org or git.com
> ...
> > > > (And I guess something like git-scm.org wouldn't qualify as more
> > > > "official", would it?)
> > >
> ...
> > If someone trustworthy in the community has the resources to sponsor the
> > domain, I will only be happy and gladly set it up on my side (I can run
> > the nameservers myself too, if required). But I don't have the
> > resources for registering the domain myself, unfortunately.
>
> "git" is a three letter word. I don't think there have been *any*
> three letter .com/.org/.net domains available for years.
>
> I see that Jonas Fonseca registered git-scm.org today... I wonder
> what his plans are for that domain...
The plan is to use it for git propaganda in some form or another. :-)
If the list decides that it could be a better official name or simply an
alias (currently the case if I configured it correctly) to git.or.cz (or
whatever the list comes up with) I will gladly act as a domain sponsor.
Also, as time permits, I would like to get more involved in creating a
great online resource for git users and what better way to do that than
"homesteading the websphere".
--
Jonas Fonseca
^ permalink raw reply
* Re: git-apply segfault
From: Pierre Habouzit @ 2007-10-17 11:10 UTC (permalink / raw)
To: Andy Parkins; +Cc: git
In-Reply-To: <200710171100.01247.andyparkins@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 734 bytes --]
On Wed, Oct 17, 2007 at 10:00:01AM +0000, Andy Parkins wrote:
> Hello,
>
> I've not got time to investigate this further just now, I'll try later. In
> case anyone else wants to though; I just got this core dump when running git
> rebase using current git master (1.5.3.4.206.g58ba4):
It's not the current master, it's an old one, the fix is in:
90d16ec032b20f9f1146f3aceca12165aba3b6d6
You must fetch from spearce.git[0] that has taken maintainance interim
until junio comes back.
Cheers,
[0] git://repo.or.cz/git/spearce.git
--
·O· Pierre Habouzit
··O madcoder@debian.org
OOO http://www.madism.org
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply
* git update index question
From: Gonzalo Garramuno @ 2007-10-17 10:23 UTC (permalink / raw)
To: git
Hi. I'm new to git but have been using it successfully for about three
months now and love it.
I've run into my first problem (or, more specifically) lack of
understanding.
I'm currently working on linux.
After some modifications of my source code with a script and doing a
commit with qgit, it seems some spaces at the end of those changed lines
got added.
Now, whenever I try to do a commit, the result is that git aborts with
* trailing whitespace (line XXX).
That is, it fails due to git's pre-commit perl hook.
Now, I've modified and changed the offending lines, but redoing the
commit the problem persists.
After loooking into it, I realized the issue is git's index file. If
git-diff-index is called without --cached, the diff matches what's on
disk and works as I expect. However, the pre-commit hook calls it with
--cached which leads to the problem.
Thus, since I don't want to modify the pre-commit hook, the question is
what's the proper way to rebuild git's index file for all the files that
were to be committed but weren't due to the abort.
I've tried git-update-index with most of the flags with no success. I
only got it to update the index properly when I specifically specified a
filename with the problem, but I have a lot of files with the issue and
git already knows about them so I was hoping for a better method.
--
Gonzalo Garramuño
Film Aura
A New Dawn in Media Companies
gga@filmaura.com
http://www.filmaura.com
^ permalink raw reply
* Re: [PATCH] Teach core.autocrlf to 'git blame'
From: Marius Storm-Olsen @ 2007-10-17 10:57 UTC (permalink / raw)
To: git, Shawn O. Pearce
In-Reply-To: <1191586411-7436-1-git-send-email-marius@trolltech.com>
[-- Attachment #1: Type: text/plain, Size: 1117 bytes --]
Just a reminder of this one, as I didn't see it any "What's in"
reports, nor your http://repo.or.cz/w/git/spearce.git repo.
(It's normal git.git patch, not an msysgit patch :-)
--
.marius
Marius Storm-Olsen said the following on 05.10.2007 14:13:
> Pass the fake commit through convert_to_git, so that the
> file is adjusted for local line-ending convention.
>
> Signed-off-by: Marius Storm-Olsen <marius@trolltech.com>
> ---
> Added missing signoff in the previous mail.
>
> builtin-blame.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/builtin-blame.c b/builtin-blame.c
> index e3112a2..8432b82 100644
> --- a/builtin-blame.c
> +++ b/builtin-blame.c
> @@ -2059,6 +2059,7 @@ static struct commit *fake_working_tree_commit(const char *path, const char *con
> if (strbuf_read(&buf, 0, 0) < 0)
> die("read error %s from stdin", strerror(errno));
> }
> + convert_to_git(path, buf.buf, buf.len, &buf);
> origin->file.ptr = buf.buf;
> origin->file.size = buf.len;
> pretend_sha1_file(buf.buf, buf.len, OBJ_BLOB, origin->blob_sha1);
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 187 bytes --]
^ permalink raw reply
* Re: [PATCH 1/2] Fixing path quoting in git-rebase
From: Johannes Sixt @ 2007-10-17 10:41 UTC (permalink / raw)
To: Jonathan del Strother; +Cc: git, Jonathan del Strother
In-Reply-To: <11926134961549-git-send-email-maillist@steelskies.com>
Jonathan del Strother schrieb:
> git-rebase used to fail when run from a path with a space in.
>
> Signed-off-by: Jonathan del Strother <jon.delStrother@bestbefore.tv>
> ---
> git-rebase.sh | 26 +++++++++++++-------------
> 1 files changed, 13 insertions(+), 13 deletions(-)
Looks good and works. Thanks.
-- Hannes
^ permalink raw reply
* Re: [PATCH] When renaming config sections delete conflicting sections
From: Jonas Fonseca @ 2007-10-17 10:37 UTC (permalink / raw)
To: Shawn O. Pearce; +Cc: git
In-Reply-To: <20071017005517.GJ13801@spearce.org>
Shawn O. Pearce <spearce@spearce.org> wrote Tue, Oct 16, 2007:
> Jonas Fonseca <fonseca@diku.dk> wrote:
> > The old behavior of keeping config sections matching the new name caused
> > problems leading to warnings being emitted by git-remote when renaming
> > branches where information about tracked remote branches differed. To
> > fix this any config sections that will conflict with the new name are
> > removed from the config file. Update test to check for this.
> ...
> > This command sequence was causing problems for me:
> >
> > git checkout -b test madcoder/next
> > git checkout -b test2 spearce/next
> > git branch -M test
>
> Ouch. But this may cause the user to lose what they might consider
> important settings relative to the old section named branch.test.
True, but to me the meaning of -M is "I know what I am doing".
> I think in the case you mention above where you are doing a
> `branch -M` the user really does want the basic branch properties
> to be forced over (branch.$name.remote, branch.$name.merge) but
> they probably do not want other branch properties to be removed
> or deleted. Or maybe they do.
You never know, and sure if there is an option to gracefully avoid
lossing this information that is the right approach, but I don't see how
this can be done in this situation. Besides currently only
branch.$name.mergoptions will be lost, hardly a problem.
> Its really hard to second guess the user's intent here. I think
> its too broad to whack an entire section when renaming. [...]
>
> So we don't blindly replace multi-valued keys just because the
> user asked us to. I don't really see a section as being that much
> different to warrant a potentially lossy behavior by default.
Because it makes sense in this situation and erroring out is a good
choice, but we are running out of git-branch options based on the letter
'm'. And to me, -m is the default for renaming branches, and -M is a
shortcut for doing a lot of other stuff with well-defined implications.
Perhaps we can enable only this "lossy behavior" only for git-branch by
adding an extra argument to git_config_rename_section? Then we can later
add a new option to git-config along the lines of --overwrite-section.
--
Jonas Fonseca
^ permalink raw reply
* Re: On Tabs and Spaces
From: Nikolai Weibull @ 2007-10-17 10:21 UTC (permalink / raw)
To: Michael Witten; +Cc: Luke Lu, git
In-Reply-To: <E29971BA-7306-4570-8383-26D0C9C0B814@mit.edu>
On 10/17/07, Michael Witten <mfwitten@mit.edu> wrote:
>
> On 17 Oct 2007, at 3:17:08 AM, Luke Lu wrote:
>
> > But I still haven't seen any compelling arguments against the "all
> > space" case
>
> Overhead!
>
> If you use 8 spaces instead of one tab,
> that's using up 7x more space!
>
> Consider:
>
> # calculates the extra space required to
> # use the given number of spaces/tab.
> size()
> {
> count=`grep -RIo "\`printf \"\t\"\`" . | wc -l`;
> perl -e "print $count*$(($1-1))/1024/1024 . \" MB\n\"";
> }
>
> Then in in a git working tree:
>
> size 8; # 1.28701210021973 MB
> size 4; # 0.551576614379883 MB
>
> In a linux kernel working tree:
>
> size 8; # 61.4902725219727 MB
> size 4; # 26.3529739379883 MB
As already pointed out, this isn't the true waste. Run the following
Ruby script to determine the true waste:
------------ cut here -----------
TabWidth = 8
actual_size = 0
expanded_size = 0
ARGF.each_line do |line|
width = 0
line.each_byte do |byte|
width += (byte == ?\t) ? (TabWidth - (width % TabWidth)) : 1
end
actual_size += line.length
expanded_size += width
end
puts (expanded_size - actual_size).to_s
------------ cut here -----------
This will give you the actual space waste. Run it like so:
% ruby space-waste.rb /usr/src/linux/**/*.[ch]
(or in a similar manner that doesn't fail due to going over the
maximum command-line limit).
According to this calculation the waste is 47808782 bytes, or about
45.6 MiB, for 8-spaces-wide tabs.
^ permalink raw reply
* Re: On Tabs and Spaces
From: Luke Lu @ 2007-10-17 10:03 UTC (permalink / raw)
To: Michael Witten; +Cc: git
In-Reply-To: <E29971BA-7306-4570-8383-26D0C9C0B814@mit.edu>
On Oct 17, 2007, at 2:09 AM, Michael Witten wrote:
>
> On 17 Oct 2007, at 3:17:08 AM, Luke Lu wrote:
>
>> But I still haven't seen any compelling arguments against the "all
>> space" case
>
> Overhead!
>
> If you use 8 spaces instead of one tab,
> that's using up 7x more space!
>
> Consider:
>
> # calculates the extra space required to
> # use the given number of spaces/tab.
> size()
> {
> count=`grep -RIo "\`printf \"\t\"\`" . | wc -l`;
> perl -e "print $count*$(($1-1))/1024/1024 . \" MB\n\"";
> }
>
> Then in in a git working tree:
>
> size 8; # 1.28701210021973 MB
> size 4; # 0.551576614379883 MB
First, the overhead is not a simple x4 or x8 conversion in size, but
it's the upper bound. Given that, let's look at the percentage of the
overhead: my git working tree is 56MB after gc, so the overhead is
2.3% max for size 8 and 0.98% for size 4. That's not significant at all.
>
> In a linux kernel working tree:
>
> size 8; # 61.4902725219727 MB
> size 4; # 26.3529739379883 MB
>
> Conclusion:
>
> Yikes!
Now, compile the kernel, do a du in the tree and report back
percentages of the overhead.
Disk is cheap (1GB costs less than half a dollar), people's
productivity/time is not. The overhead argument is compelling, not!
__Luke
^ permalink raw reply
* git-apply segfault
From: Andy Parkins @ 2007-10-17 10:00 UTC (permalink / raw)
To: git
Hello,
I've not got time to investigate this further just now, I'll try later. In
case anyone else wants to though; I just got this core dump when running git
rebase using current git master (1.5.3.4.206.g58ba4):
Core was generated by `git
apply --allow-binary-replacement --index .dotest/patch'.
Program terminated with signal 11, Segmentation fault.
#0 0xb7cd42a0 in memchr () from /lib/i686/cmov/libc.so.6
(gdb) bt
#0 0xb7cd42a0 in memchr () from /lib/i686/cmov/libc.so.6
#1 0x080c0931 in convert_to_git (path=0x8129a88 "ui/dmswindow.cc",
src=0xb7c3d008 <Address 0xb7c3d008 out of bounds>, len=88306, dst=0xbfb689bc)
at convert.c:428
#2 0x0804ecfd in check_patch_list (patch=0x81299d0) at builtin-apply.c:1434
#3 0x080510fa in apply_patch (fd=1, filename=0xffffffff <Address 0xffffffff
out of bounds>, inaccurate_eof=1) at builtin-apply.c:2686
#4 0x0805233e in cmd_apply (argc=4, argv=0xbfb69d18, unused_prefix=0x0) at
builtin-apply.c:2853
#5 0x0804ab3b in handle_internal_command (argc=4, argv=0xbfb69d18) at
git.c:284
#6 0x0804b19f in main (argc=2037149808, argv=0x612d2d00) at git.c:467
It was (unfortunately) on a private repository so I can't share it for
testing, but am happy to do tests if wanted.
Andy
--
Dr Andy Parkins, M Eng (hons), MIET
andyparkins@gmail.com
^ permalink raw reply
* [PATCH 2/2] Quoting paths in tests
From: Jonathan del Strother @ 2007-10-17 9:31 UTC (permalink / raw)
To: git; +Cc: Jonathan del Strother
In-Reply-To: <11926134961549-git-send-email-maillist@steelskies.com>
From: Jonathan del Strother <jon.delStrother@bestbefore.tv>
Double-quoting all paths so the tests can be run from inside directories with spaces and apostrophes
Signed-off-by: Jonathan del Strother <jon.delStrother@bestbefore.tv>
---
t/lib-git-svn.sh | 2 +-
t/t1020-subdirectory.sh | 22 ++++++------
t/t3050-subprojects-fetch.sh | 2 +-
t/t3404-rebase-interactive.sh | 2 +-
t/t5500-fetch-pack.sh | 2 +-
t/t5700-clone-reference.sh | 2 +-
t/t7003-filter-branch.sh | 2 +-
t/t7501-commit.sh | 4 +-
t/t9100-git-svn-basic.sh | 54 +++++++++++++++---------------
t/t9101-git-svn-props.sh | 6 ++--
t/t9102-git-svn-deep-rmdir.sh | 6 ++--
t/t9104-git-svn-follow-parent.sh | 50 ++++++++++++++--------------
t/t9105-git-svn-commit-diff.sh | 12 +++---
t/t9106-git-svn-commit-diff-clobber.sh | 14 ++++----
t/t9107-git-svn-migrate.sh | 40 +++++++++++-----------
t/t9108-git-svn-glob.sh | 8 ++--
t/t9110-git-svn-use-svm-props.sh | 8 ++--
t/t9111-git-svn-use-svnsync-props.sh | 8 ++--
t/t9112-git-svn-md5less-file.sh | 4 +-
t/t9113-git-svn-dcommit-new-file.sh | 6 ++--
t/t9114-git-svn-dcommit-merge.sh | 4 +-
t/t9115-git-svn-dcommit-funky-renames.sh | 4 +-
t/t9116-git-svn-log.sh | 4 +-
t/t9500-gitweb-standalone-no-errors.sh | 4 +-
t/test-lib.sh | 2 +-
25 files changed, 136 insertions(+), 136 deletions(-)
diff --git a/t/lib-git-svn.sh b/t/lib-git-svn.sh
index 8d4a447..cde3053 100644
--- a/t/lib-git-svn.sh
+++ b/t/lib-git-svn.sh
@@ -25,7 +25,7 @@ perl -w -e "
use SVN::Core;
use SVN::Repos;
\$SVN::Core::VERSION gt '1.1.0' or exit(42);
-system(qw/svnadmin create --fs-type fsfs/, '$svnrepo') == 0 or exit(41);
+system(qw/svnadmin create --fs-type fsfs/, \"$svnrepo\") == 0 or exit(41);
" >&3 2>&4
x=$?
if test $x -ne 0
diff --git a/t/t1020-subdirectory.sh b/t/t1020-subdirectory.sh
index b9cef34..5ed7fa4 100755
--- a/t/t1020-subdirectory.sh
+++ b/t/t1020-subdirectory.sh
@@ -21,7 +21,7 @@ LF='
'
test_expect_success 'update-index and ls-files' '
- cd $HERE &&
+ cd "$HERE" &&
git update-index --add one &&
case "`git ls-files`" in
one) echo ok one ;;
@@ -41,7 +41,7 @@ test_expect_success 'update-index and ls-files' '
'
test_expect_success 'cat-file' '
- cd $HERE &&
+ cd "$HERE" &&
two=`git ls-files -s dir/two` &&
two=`expr "$two" : "[0-7]* \\([0-9a-f]*\\)"` &&
echo "$two" &&
@@ -54,7 +54,7 @@ test_expect_success 'cat-file' '
rm -f actual dir/actual
test_expect_success 'diff-files' '
- cd $HERE &&
+ cd "$HERE" &&
echo a >>one &&
echo d >>dir/two &&
case "`git diff-files --name-only`" in
@@ -74,7 +74,7 @@ test_expect_success 'diff-files' '
'
test_expect_success 'write-tree' '
- cd $HERE &&
+ cd "$HERE" &&
top=`git write-tree` &&
echo $top &&
cd dir &&
@@ -84,7 +84,7 @@ test_expect_success 'write-tree' '
'
test_expect_success 'checkout-index' '
- cd $HERE &&
+ cd "$HERE" &&
git checkout-index -f -u one &&
cmp one original.one &&
cd dir &&
@@ -93,7 +93,7 @@ test_expect_success 'checkout-index' '
'
test_expect_success 'read-tree' '
- cd $HERE &&
+ cd "$HERE" &&
rm -f one dir/two &&
tree=`git write-tree` &&
git read-tree --reset -u "$tree" &&
@@ -107,27 +107,27 @@ test_expect_success 'read-tree' '
'
test_expect_success 'no file/rev ambiguity check inside .git' '
- cd $HERE &&
+ cd "$HERE" &&
git commit -a -m 1 &&
- cd $HERE/.git &&
+ cd "$HERE/.git" &&
git show -s HEAD
'
test_expect_success 'no file/rev ambiguity check inside a bare repo' '
- cd $HERE &&
+ cd "$HERE" &&
git clone -s --bare .git foo.git &&
cd foo.git && GIT_DIR=. git show -s HEAD
'
# This still does not work as it should...
: test_expect_success 'no file/rev ambiguity check inside a bare repo' '
- cd $HERE &&
+ cd "$HERE" &&
git clone -s --bare .git foo.git &&
cd foo.git && git show -s HEAD
'
test_expect_success 'detection should not be fooled by a symlink' '
- cd $HERE &&
+ cd "$HERE" &&
rm -fr foo.git &&
git clone -s .git another &&
ln -s another yetanother &&
diff --git a/t/t3050-subprojects-fetch.sh b/t/t3050-subprojects-fetch.sh
index 34f26a8..4b74cc6 100755
--- a/t/t3050-subprojects-fetch.sh
+++ b/t/t3050-subprojects-fetch.sh
@@ -20,7 +20,7 @@ test_expect_success setup '
'
test_expect_success clone '
- git clone file://`pwd`/.git cloned &&
+ git clone "file://`pwd`/.git" cloned &&
(git rev-parse HEAD; git ls-files -s) >expected &&
(
cd cloned &&
diff --git a/t/t3404-rebase-interactive.sh b/t/t3404-rebase-interactive.sh
index 1113904..aa86042 100755
--- a/t/t3404-rebase-interactive.sh
+++ b/t/t3404-rebase-interactive.sh
@@ -92,7 +92,7 @@ done
EOF
chmod a+x fake-editor.sh
-VISUAL="$(pwd)/fake-editor.sh"
+VISUAL="\"$(pwd)/fake-editor.sh\""
export VISUAL
test_expect_success 'no changes are a nop' '
diff --git a/t/t5500-fetch-pack.sh b/t/t5500-fetch-pack.sh
index 7b6798d..5489ffe 100755
--- a/t/t5500-fetch-pack.sh
+++ b/t/t5500-fetch-pack.sh
@@ -129,7 +129,7 @@ pull_to_client 2nd "B" $((64*3))
pull_to_client 3rd "A" $((1*3)) # old fails
-test_expect_success "clone shallow" "git-clone --depth 2 file://`pwd`/. shallow"
+test_expect_success "clone shallow" "git-clone --depth 2 \"file://`pwd`/.\" shallow"
(cd shallow; git count-objects -v) > count.shallow
diff --git a/t/t5700-clone-reference.sh b/t/t5700-clone-reference.sh
index 4e93aaa..8bb34f9 100755
--- a/t/t5700-clone-reference.sh
+++ b/t/t5700-clone-reference.sh
@@ -51,7 +51,7 @@ diff expected current'
cd "$base_dir"
test_expect_success 'cloning with reference (no -l -s)' \
-'git clone --reference B file://`pwd`/A D'
+'git clone --reference B "file://`pwd`/A" D'
cd "$base_dir"
diff --git a/t/t7003-filter-branch.sh b/t/t7003-filter-branch.sh
index e935b20..1ab5392 100755
--- a/t/t7003-filter-branch.sh
+++ b/t/t7003-filter-branch.sh
@@ -107,7 +107,7 @@ test_expect_success 'use index-filter to move into a subdirectory' '
"git ls-files -s | sed \"s-\\t-&newsubdir/-\" |
GIT_INDEX_FILE=\$GIT_INDEX_FILE.new \
git update-index --index-info &&
- mv \$GIT_INDEX_FILE.new \$GIT_INDEX_FILE" directorymoved &&
+ mv \"\$GIT_INDEX_FILE.new\" \"\$GIT_INDEX_FILE\"" directorymoved &&
test -z "$(git diff HEAD directorymoved:newsubdir)"'
test_expect_success 'stops when msg filter fails' '
diff --git a/t/t7501-commit.sh b/t/t7501-commit.sh
index b151b51..e97e756 100644
--- a/t/t7501-commit.sh
+++ b/t/t7501-commit.sh
@@ -69,7 +69,7 @@ test_expect_success \
cat >editor <<\EOF
#!/bin/sh
-sed -i -e "s/a file/an amend commit/g" $1
+sed -i -e "s/a file/an amend commit/g" "$1"
EOF
chmod 755 editor
@@ -88,7 +88,7 @@ test_expect_success \
cat >editor <<\EOF
#!/bin/sh
-sed -i -e "s/amend/older/g" $1
+sed -i -e "s/amend/older/g" "$1"
EOF
chmod 755 editor
diff --git a/t/t9100-git-svn-basic.sh b/t/t9100-git-svn-basic.sh
index 614cf50..1d802a8 100755
--- a/t/t9100-git-svn-basic.sh
+++ b/t/t9100-git-svn-basic.sh
@@ -31,16 +31,16 @@ test_expect_success \
echo 'zzz' > bar/zzz &&
echo '#!/bin/sh' > exec.sh &&
chmod +x exec.sh &&
- svn import -m 'import for git-svn' . $svnrepo >/dev/null &&
+ svn import -m 'import for git-svn' . \"$svnrepo\" >/dev/null &&
cd .. &&
rm -rf import &&
- git-svn init $svnrepo"
+ git-svn init \"$svnrepo\""
test_expect_success \
'import an SVN revision into git' \
'git-svn fetch'
-test_expect_success "checkout from svn" "svn co $svnrepo '$SVN_TREE'"
+test_expect_success "checkout from svn" "svn co \"$svnrepo\" \"$SVN_TREE\""
name='try a deep --rmdir with a commit'
test_expect_success "$name" "
@@ -51,8 +51,8 @@ test_expect_success "$name" "
git commit -m '$name' &&
git-svn set-tree --find-copies-harder --rmdir \
remotes/git-svn..mybranch &&
- svn up '$SVN_TREE' &&
- test -d '$SVN_TREE'/dir && test ! -d '$SVN_TREE'/dir/a"
+ svn up \"$SVN_TREE\" &&
+ test -d \"$SVN_TREE\"/dir && test ! -d \"$SVN_TREE\"/dir/a"
name='detect node change from file to directory #1'
@@ -69,7 +69,7 @@ test_expect_failure "$name" "
name='detect node change from directory to file #1'
test_expect_failure "$name" "
- rm -rf dir '$GIT_DIR'/index &&
+ rm -rf dir \"$GIT_DIR\"/index &&
git checkout -f -b mybranch2 remotes/git-svn &&
mv bar/zzz zzz &&
rm -rf bar &&
@@ -83,7 +83,7 @@ test_expect_failure "$name" "
name='detect node change from file to directory #2'
test_expect_failure "$name" "
- rm -f '$GIT_DIR'/index &&
+ rm -f \"$GIT_DIR\"/index &&
git checkout -f -b mybranch3 remotes/git-svn &&
rm bar/zzz &&
git update-index --remove bar/zzz &&
@@ -97,7 +97,7 @@ test_expect_failure "$name" "
name='detect node change from directory to file #2'
test_expect_failure "$name" "
- rm -f '$GIT_DIR'/index &&
+ rm -f \"$GIT_DIR\"/index &&
git checkout -f -b mybranch4 remotes/git-svn &&
rm -rf dir &&
git update-index --remove -- dir/file &&
@@ -111,15 +111,15 @@ test_expect_failure "$name" "
name='remove executable bit from a file'
test_expect_success "$name" "
- rm -f '$GIT_DIR'/index &&
+ rm -f \"$GIT_DIR\"/index &&
git checkout -f -b mybranch5 remotes/git-svn &&
chmod -x exec.sh &&
git update-index exec.sh &&
git commit -m '$name' &&
git-svn set-tree --find-copies-harder --rmdir \
remotes/git-svn..mybranch5 &&
- svn up '$SVN_TREE' &&
- test ! -x '$SVN_TREE'/exec.sh"
+ svn up \"$SVN_TREE\" &&
+ test ! -x \"$SVN_TREE\"/exec.sh"
name='add executable bit back file'
@@ -129,8 +129,8 @@ test_expect_success "$name" "
git commit -m '$name' &&
git-svn set-tree --find-copies-harder --rmdir \
remotes/git-svn..mybranch5 &&
- svn up '$SVN_TREE' &&
- test -x '$SVN_TREE'/exec.sh"
+ svn up \"$SVN_TREE\" &&
+ test -x \"$SVN_TREE\"/exec.sh"
name='executable file becomes a symlink to bar/zzz (file)'
@@ -141,8 +141,8 @@ test_expect_success "$name" "
git commit -m '$name' &&
git-svn set-tree --find-copies-harder --rmdir \
remotes/git-svn..mybranch5 &&
- svn up '$SVN_TREE' &&
- test -L '$SVN_TREE'/exec.sh"
+ svn up \"$SVN_TREE\" &&
+ test -L \"$SVN_TREE\"/exec.sh"
name='new symlink is added to a file that was also just made executable'
@@ -153,9 +153,9 @@ test_expect_success "$name" "
git commit -m '$name' &&
git-svn set-tree --find-copies-harder --rmdir \
remotes/git-svn..mybranch5 &&
- svn up '$SVN_TREE' &&
- test -x '$SVN_TREE'/bar/zzz &&
- test -L '$SVN_TREE'/exec-2.sh"
+ svn up \"$SVN_TREE\" &&
+ test -x \"$SVN_TREE\"/bar/zzz &&
+ test -L \"$SVN_TREE\"/exec-2.sh"
name='modify a symlink to become a file'
test_expect_success "$name" "
@@ -166,10 +166,10 @@ test_expect_success "$name" "
git commit -m '$name' &&
git-svn set-tree --find-copies-harder --rmdir \
remotes/git-svn..mybranch5 &&
- svn up '$SVN_TREE' &&
- test -f '$SVN_TREE'/exec-2.sh &&
- test ! -L '$SVN_TREE'/exec-2.sh &&
- git diff help $SVN_TREE/exec-2.sh"
+ svn up \"$SVN_TREE\" &&
+ test -f \"$SVN_TREE\"/exec-2.sh &&
+ test ! -L \"$SVN_TREE\"/exec-2.sh &&
+ git diff help \"$SVN_TREE\"/exec-2.sh"
if test "$have_utf8" = t
then
@@ -190,7 +190,7 @@ name='test fetch functionality (svn => git) with alternate GIT_SVN_ID'
GIT_SVN_ID=alt
export GIT_SVN_ID
test_expect_success "$name" \
- "git-svn init $svnrepo && git-svn fetch &&
+ "git-svn init \"$svnrepo\" && git-svn fetch &&
git rev-list --pretty=raw remotes/git-svn | grep ^tree | uniq > a &&
git rev-list --pretty=raw remotes/alt | grep ^tree | uniq > b &&
git diff a b"
@@ -220,16 +220,16 @@ test_expect_failure 'exit if remote refs are ambigious' "
"
test_expect_failure 'exit if init-ing a would clobber a URL' "
- svnadmin create ${PWD}/svnrepo2 &&
- svn mkdir -m 'mkdir bar' ${svnrepo}2/bar &&
+ svnadmin create \"${PWD}/svnrepo2\" &&
+ svn mkdir -m 'mkdir bar' \"${svnrepo}2/bar\" &&
git config --unset svn-remote.svn.fetch \
'^bar:refs/remotes/git-svn$' &&
- git-svn init ${svnrepo}2/bar
+ git-svn init \"${svnrepo}2/bar\"
"
test_expect_success \
'init allows us to connect to another directory in the same repo' "
- git-svn init --minimize-url -i bar $svnrepo/bar &&
+ git-svn init --minimize-url -i bar \"$svnrepo/bar\" &&
git config --get svn-remote.svn.fetch \
'^bar:refs/remotes/bar$' &&
git config --get svn-remote.svn.fetch \
diff --git a/t/t9101-git-svn-props.sh b/t/t9101-git-svn-props.sh
index 5aac644..e741bfe 100755
--- a/t/t9101-git-svn-props.sh
+++ b/t/t9101-git-svn-props.sh
@@ -52,7 +52,7 @@ EOF
cd ..
rm -rf import
-test_expect_success 'checkout working copy from svn' "svn co $svnrepo test_wc"
+test_expect_success 'checkout working copy from svn' "svn co \"$svnrepo\" test_wc"
test_expect_success 'setup some commits to svn' \
'cd test_wc &&
echo Greetings >> kw.c &&
@@ -66,7 +66,7 @@ test_expect_success 'setup some commits to svn' \
svn commit -m "Propset Id" &&
cd ..'
-test_expect_success 'initialize git-svn' "git-svn init $svnrepo"
+test_expect_success 'initialize git-svn' "git-svn init \"$svnrepo\""
test_expect_success 'fetch revisions from svn' 'git-svn fetch'
name='test svn:keywords ignoring'
@@ -92,7 +92,7 @@ test_expect_success "propset CR on crlf files" \
test_expect_success 'fetch and pull latest from svn and checkout a new wc' \
"git-svn fetch &&
git pull . remotes/git-svn &&
- svn co $svnrepo new_wc"
+ svn co \"$svnrepo\" new_wc"
for i in crlf ne_crlf lf ne_lf cr ne_cr empty_cr empty_lf empty empty_crlf
do
diff --git a/t/t9102-git-svn-deep-rmdir.sh b/t/t9102-git-svn-deep-rmdir.sh
index 4e08083..e3af319 100755
--- a/t/t9102-git-svn-deep-rmdir.sh
+++ b/t/t9102-git-svn-deep-rmdir.sh
@@ -9,12 +9,12 @@ test_expect_success 'initialize repo' "
mkdir -p deeply/nested/directory/number/2 &&
echo foo > deeply/nested/directory/number/1/file &&
echo foo > deeply/nested/directory/number/2/another &&
- svn import -m 'import for git-svn' . $svnrepo &&
+ svn import -m 'import for git-svn' . \"$svnrepo\" &&
cd ..
"
test_expect_success 'mirror via git-svn' "
- git-svn init $svnrepo &&
+ git-svn init \"$svnrepo\" &&
git-svn fetch &&
git checkout -f -b test-rmdir remotes/git-svn
"
@@ -23,7 +23,7 @@ test_expect_success 'Try a commit on rmdir' "
git rm -f deeply/nested/directory/number/2/another &&
git commit -a -m 'remove another' &&
git-svn set-tree --rmdir HEAD &&
- svn ls -R $svnrepo | grep ^deeply/nested/directory/number/1
+ svn ls -R \"$svnrepo\" | grep ^deeply/nested/directory/number/1
"
diff --git a/t/t9104-git-svn-follow-parent.sh b/t/t9104-git-svn-follow-parent.sh
index 7ba7630..a422afa 100755
--- a/t/t9104-git-svn-follow-parent.sh
+++ b/t/t9104-git-svn-follow-parent.sh
@@ -11,9 +11,9 @@ test_expect_success 'initialize repo' "
cd import &&
mkdir -p trunk &&
echo hello > trunk/readme &&
- svn import -m 'initial' . $svnrepo &&
+ svn import -m 'initial' . \"$svnrepo\" &&
cd .. &&
- svn co $svnrepo wc &&
+ svn co \"$svnrepo\" wc &&
cd wc &&
echo world >> trunk/readme &&
poke trunk/readme &&
@@ -27,7 +27,7 @@ test_expect_success 'initialize repo' "
"
test_expect_success 'init and fetch a moved directory' "
- git-svn init --minimize-url -i thunk $svnrepo/thunk &&
+ git-svn init --minimize-url -i thunk \"$svnrepo/thunk\" &&
git-svn fetch -i thunk &&
test \"\`git rev-parse --verify refs/remotes/thunk@2\`\" \
= \"\`git rev-parse --verify refs/remotes/thunk~1\`\" &&
@@ -38,7 +38,7 @@ test_expect_success 'init and fetch a moved directory' "
"
test_expect_success 'init and fetch from one svn-remote' "
- git config svn-remote.svn.url $svnrepo &&
+ git config svn-remote.svn.url \"$svnrepo\" &&
git config --add svn-remote.svn.fetch \
trunk:refs/remotes/svn/trunk &&
git config --add svn-remote.svn.fetch \
@@ -52,9 +52,9 @@ test_expect_success 'init and fetch from one svn-remote' "
test_expect_success 'follow deleted parent' "
(svn cp -m 'resurrecting trunk as junk' \
- $svnrepo/trunk@2 $svnrepo/junk ||
+ \"$svnrepo/trunk@2\" \"$svnrepo\"/junk ||
svn cp -m 'resurrecting trunk as junk' \
- -r2 $svnrepo/trunk $svnrepo/junk) &&
+ -r2 \"$svnrepo/trunk\" \"$svnrepo/junk\") &&
git config --add svn-remote.svn.fetch \
junk:refs/remotes/svn/junk &&
git-svn fetch -i svn/thunk &&
@@ -67,10 +67,10 @@ test_expect_success 'follow deleted parent' "
test_expect_success 'follow larger parent' "
mkdir -p import/trunk/thunk/bump/thud &&
echo hi > import/trunk/thunk/bump/thud/file &&
- svn import -m 'import a larger parent' import $svnrepo/larger-parent &&
- svn cp -m 'hi' $svnrepo/larger-parent $svnrepo/another-larger &&
+ svn import -m 'import a larger parent' import \"$svnrepo/larger-parent\" &&
+ svn cp -m 'hi' \"$svnrepo/larger-parent\" \"$svnrepo/another-larger\" &&
git-svn init --minimize-url -i larger \
- $svnrepo/another-larger/trunk/thunk/bump/thud &&
+ \"$svnrepo/another-larger/trunk/thunk/bump/thud\" &&
git-svn fetch -i larger &&
git rev-parse --verify refs/remotes/larger &&
git rev-parse --verify \
@@ -83,23 +83,23 @@ test_expect_success 'follow larger parent' "
"
test_expect_success 'follow higher-level parent' "
- svn mkdir -m 'follow higher-level parent' $svnrepo/blob &&
- svn co $svnrepo/blob blob &&
+ svn mkdir -m 'follow higher-level parent' \"$svnrepo/blob\" &&
+ svn co \"$svnrepo/blob\" blob &&
cd blob &&
echo hi > hi &&
svn add hi &&
svn commit -m 'hihi' &&
cd ..
- svn mkdir -m 'new glob at top level' $svnrepo/glob &&
- svn mv -m 'move blob down a level' $svnrepo/blob $svnrepo/glob/blob &&
- git-svn init --minimize-url -i blob $svnrepo/glob/blob &&
+ svn mkdir -m 'new glob at top level' \"$svnrepo/glob\" &&
+ svn mv -m 'move blob down a level' \"$svnrepo/blob\" \"$svnrepo/glob/blob\" &&
+ git-svn init --minimize-url -i blob \"$svnrepo/glob/blob\" &&
git-svn fetch -i blob
"
test_expect_success 'follow deleted directory' "
- svn mv -m 'bye!' $svnrepo/glob/blob/hi $svnrepo/glob/blob/bye &&
- svn rm -m 'remove glob' $svnrepo/glob &&
- git-svn init --minimize-url -i glob $svnrepo/glob &&
+ svn mv -m 'bye!' \"$svnrepo/glob/blob/hi\" \"$svnrepo/glob/blob/bye\" &&
+ svn rm -m 'remove glob' \"$svnrepo/glob\" &&
+ git-svn init --minimize-url -i glob \"$svnrepo/glob\" &&
git-svn fetch -i glob &&
test \"\`git cat-file blob refs/remotes/glob:blob/bye\`\" = hi &&
test \"\`git ls-tree refs/remotes/glob | wc -l \`\" -eq 1
@@ -118,9 +118,9 @@ test_expect_success 'follow-parent avoids deleting relevant info' "
echo 'bad delete test 2' > \
import/trunk/subversion/bindings/swig/perl/another-larger &&
cd import &&
- svn import -m 'r9270 test' . $svnrepo/r9270 &&
+ svn import -m 'r9270 test' . \"$svnrepo/r9270\" &&
cd .. &&
- svn co $svnrepo/r9270/trunk/subversion/bindings/swig/perl r9270 &&
+ svn co \"$svnrepo/r9270/trunk/subversion/bindings/swig/perl\" r9270 &&
cd r9270 &&
svn mkdir native &&
svn mv t native/t &&
@@ -130,7 +130,7 @@ test_expect_success 'follow-parent avoids deleting relevant info' "
svn commit -m 'reorg test' &&
cd .. &&
git-svn init --minimize-url -i r9270-t \
- $svnrepo/r9270/trunk/subversion/bindings/swig/perl/native/t &&
+ \"$svnrepo/r9270/trunk/subversion/bindings/swig/perl/native/t\" &&
git-svn fetch -i r9270-t &&
test \`git rev-list r9270-t | wc -l\` -eq 2 &&
test \"\`git ls-tree --name-only r9270-t~1\`\" = \
@@ -138,9 +138,9 @@ test_expect_success 'follow-parent avoids deleting relevant info' "
"
test_expect_success "track initial change if it was only made to parent" "
- svn cp -m 'wheee!' $svnrepo/r9270/trunk $svnrepo/r9270/drunk &&
+ svn cp -m 'wheee!' \"$svnrepo/r9270/trunk\" \"$svnrepo/r9270/drunk\" &&
git-svn init --minimize-url -i r9270-d \
- $svnrepo/r9270/drunk/subversion/bindings/swig/perl/native/t &&
+ \"$svnrepo/r9270/drunk/subversion/bindings/swig/perl/native/t\" &&
git-svn fetch -i r9270-d &&
test \`git rev-list r9270-d | wc -l\` -eq 3 &&
test \"\`git ls-tree --name-only r9270-t\`\" = \
@@ -150,7 +150,7 @@ test_expect_success "track initial change if it was only made to parent" "
"
test_expect_success "track multi-parent paths" "
- svn cp -m 'resurrect /glob' $svnrepo/r9270 $svnrepo/glob &&
+ svn cp -m 'resurrect /glob' \"$svnrepo/r9270\" \"$svnrepo/glob\" &&
git-svn multi-fetch &&
test \`git cat-file commit refs/remotes/glob | \
grep '^parent ' | wc -l\` -eq 2
@@ -161,8 +161,8 @@ test_expect_success "multi-fetch continues to work" "
"
test_expect_success "multi-fetch works off a 'clean' repository" "
- rm -r $GIT_DIR/svn $GIT_DIR/refs/remotes $GIT_DIR/logs &&
- mkdir $GIT_DIR/svn &&
+ rm -r \"$GIT_DIR/svn\" \"$GIT_DIR/refs/remotes\" \"$GIT_DIR/logs\" &&
+ mkdir \"$GIT_DIR/svn\" &&
git-svn multi-fetch
"
diff --git a/t/t9105-git-svn-commit-diff.sh b/t/t9105-git-svn-commit-diff.sh
index 318e172..9cc38d3 100755
--- a/t/t9105-git-svn-commit-diff.sh
+++ b/t/t9105-git-svn-commit-diff.sh
@@ -8,7 +8,7 @@ test_expect_success 'initialize repo' "
mkdir import &&
cd import &&
echo hello > readme &&
- svn import -m 'initial' . $svnrepo &&
+ svn import -m 'initial' . \"$svnrepo\" &&
cd .. &&
echo hello > readme &&
git update-index --add readme &&
@@ -26,17 +26,17 @@ prev=`git rev-parse --verify HEAD^1`
test_expect_success 'test the commit-diff command' "
test -n '$prev' && test -n '$head' &&
- git-svn commit-diff -r1 '$prev' '$head' '$svnrepo' &&
- svn co $svnrepo wc &&
+ git-svn commit-diff -r1 '$prev' '$head' \"$svnrepo\" &&
+ svn co \"$svnrepo\" wc &&
cmp readme wc/readme
"
test_expect_success 'commit-diff to a sub-directory (with git-svn config)' "
- svn import -m 'sub-directory' import $svnrepo/subdir &&
- git-svn init --minimize-url $svnrepo/subdir &&
+ svn import -m 'sub-directory' import \"$svnrepo/subdir\" &&
+ git-svn init --minimize-url \"$svnrepo/subdir\" &&
git-svn fetch &&
git-svn commit-diff -r3 '$prev' '$head' &&
- svn cat $svnrepo/subdir/readme > readme.2 &&
+ svn cat \"$svnrepo/subdir/readme\" > readme.2 &&
cmp readme readme.2
"
diff --git a/t/t9106-git-svn-commit-diff-clobber.sh b/t/t9106-git-svn-commit-diff-clobber.sh
index 79b7968..892ca55 100755
--- a/t/t9106-git-svn-commit-diff-clobber.sh
+++ b/t/t9106-git-svn-commit-diff-clobber.sh
@@ -8,14 +8,14 @@ test_expect_success 'initialize repo' "
mkdir import &&
cd import &&
echo initial > file &&
- svn import -m 'initial' . $svnrepo &&
+ svn import -m 'initial' . \"$svnrepo\" &&
cd .. &&
echo initial > file &&
git update-index --add file &&
git commit -a -m 'initial'
"
test_expect_success 'commit change from svn side' "
- svn co $svnrepo t.svn &&
+ svn co \"$svnrepo\" t.svn &&
cd t.svn &&
echo second line from svn >> file &&
poke file &&
@@ -27,7 +27,7 @@ test_expect_success 'commit change from svn side' "
test_expect_failure 'commit conflicting change from git' "
echo second line from git >> file &&
git commit -a -m 'second line from git' &&
- git-svn commit-diff -r1 HEAD~1 HEAD $svnrepo
+ git-svn commit-diff -r1 HEAD~1 HEAD \"$svnrepo\"
" || true
test_expect_success 'commit complementing change from git' "
@@ -36,14 +36,14 @@ test_expect_success 'commit complementing change from git' "
git commit -a -m 'second line from svn' &&
echo third line from git >> file &&
git commit -a -m 'third line from git' &&
- git-svn commit-diff -r2 HEAD~1 HEAD $svnrepo
+ git-svn commit-diff -r2 HEAD~1 HEAD \"$svnrepo\"
"
test_expect_failure 'dcommit fails to commit because of conflict' "
- git-svn init $svnrepo &&
+ git-svn init \"$svnrepo\" &&
git-svn fetch &&
git reset --hard refs/remotes/git-svn &&
- svn co $svnrepo t.svn &&
+ svn co \"$svnrepo\" t.svn &&
cd t.svn &&
echo fourth line from svn >> file &&
poke file &&
@@ -67,7 +67,7 @@ test_expect_success 'dcommit does the svn equivalent of an index merge' "
"
test_expect_success 'commit another change from svn side' "
- svn co $svnrepo t.svn &&
+ svn co \"$svnrepo\" t.svn &&
cd t.svn &&
echo third line from svn >> file &&
poke file &&
diff --git a/t/t9107-git-svn-migrate.sh b/t/t9107-git-svn-migrate.sh
index 67fdf70..59e8f0d 100755
--- a/t/t9107-git-svn-migrate.sh
+++ b/t/t9107-git-svn-migrate.sh
@@ -4,7 +4,7 @@ test_description='git-svn metadata migrations from previous versions'
. ./lib-git-svn.sh
test_expect_success 'setup old-looking metadata' "
- cp $GIT_DIR/config $GIT_DIR/config-old-git-svn &&
+ cp \"$GIT_DIR/config\" \"$GIT_DIR/config-old-git-svn\" &&
mkdir import &&
cd import &&
for i in trunk branches/a branches/b \
@@ -12,13 +12,13 @@ test_expect_success 'setup old-looking metadata' "
mkdir -p \$i && \
echo hello >> \$i/README || exit 1
done && \
- svn import -m test . $svnrepo
+ svn import -m test . \"$svnrepo\"
cd .. &&
- git-svn init $svnrepo &&
+ git-svn init \"$svnrepo\" &&
git-svn fetch &&
- mv $GIT_DIR/svn/* $GIT_DIR/ &&
- mv $GIT_DIR/svn/.metadata $GIT_DIR/ &&
- rmdir $GIT_DIR/svn &&
+ mv \"$GIT_DIR\"/svn/* \"$GIT_DIR/\" &&
+ mv \"$GIT_DIR/svn/.metadata\" \"$GIT_DIR/\" &&
+ rmdir \"$GIT_DIR/svn\" &&
git update-ref refs/heads/git-svn-HEAD refs/remotes/git-svn &&
git update-ref refs/heads/svn-HEAD refs/remotes/git-svn &&
git update-ref -d refs/remotes/git-svn refs/remotes/git-svn
@@ -28,20 +28,20 @@ head=`git rev-parse --verify refs/heads/git-svn-HEAD^0`
test_expect_success 'git-svn-HEAD is a real HEAD' "test -n '$head'"
test_expect_success 'initialize old-style (v0) git-svn layout' "
- mkdir -p $GIT_DIR/git-svn/info $GIT_DIR/svn/info &&
- echo $svnrepo > $GIT_DIR/git-svn/info/url &&
- echo $svnrepo > $GIT_DIR/svn/info/url &&
+ mkdir -p \"$GIT_DIR/git-svn/info\" \"$GIT_DIR/svn/info\" &&
+ echo \"$svnrepo\" > \"$GIT_DIR/git-svn/info/url\" &&
+ echo \"$svnrepo\" > \"$GIT_DIR/svn/info/url\" &&
git-svn migrate &&
- ! test -d $GIT_DIR/git-svn &&
+ ! test -d \"$GIT_DIR/git-svn\" &&
git rev-parse --verify refs/remotes/git-svn^0 &&
git rev-parse --verify refs/remotes/svn^0 &&
- test \`git config --get svn-remote.svn.url\` = '$svnrepo' &&
+ test \"\`git config --get svn-remote.svn.url\`\" = \"$svnrepo\" &&
test \`git config --get svn-remote.svn.fetch\` = \
':refs/remotes/git-svn'
"
test_expect_success 'initialize a multi-repository repo' "
- git-svn init $svnrepo -T trunk -t tags -b branches &&
+ git-svn init \"$svnrepo\" -T trunk -t tags -b branches &&
git config --get-all svn-remote.svn.fetch > fetch.out &&
grep '^trunk:refs/remotes/trunk$' fetch.out &&
test -n \"\`git config --get svn-remote.svn.branches \
@@ -76,14 +76,14 @@ test_expect_success 'multi-fetch works on partial urls + paths' "
test_expect_success 'migrate --minimize on old inited layout' "
git config --unset-all svn-remote.svn.fetch &&
git config --unset-all svn-remote.svn.url &&
- rm -rf $GIT_DIR/svn &&
+ rm -rf \"$GIT_DIR/svn\" &&
for i in \`cat fetch.out\`; do
path=\`expr \$i : '\\([^:]*\\):.*$'\`
ref=\`expr \$i : '[^:]*:refs/remotes/\\(.*\\)$'\`
if test -z \"\$ref\"; then continue; fi
if test -n \"\$path\"; then path=\"/\$path\"; fi
- ( mkdir -p $GIT_DIR/svn/\$ref/info/ &&
- echo $svnrepo\$path > $GIT_DIR/svn/\$ref/info/url ) || exit 1;
+ ( mkdir -p \"$GIT_DIR\"/svn/\$ref/info/ &&
+ echo \"$svnrepo\"\$path > \"$GIT_DIR\"/svn/\$ref/info/url ) || exit 1;
done &&
git-svn migrate --minimize &&
test -z \"\`git config -l |grep -v '^svn-remote\.git-svn\.'\`\" &&
@@ -99,13 +99,13 @@ test_expect_success 'migrate --minimize on old inited layout' "
test_expect_success ".rev_db auto-converted to .rev_db.UUID" "
git-svn fetch -i trunk &&
- expect=$GIT_DIR/svn/trunk/.rev_db.* &&
+ expect=\"\`find \"\$GIT_DIR\"/svn/trunk/ -name '.rev_db.*'\`\" &&
test -n \"\$expect\" &&
- mv \$expect $GIT_DIR/svn/trunk/.rev_db &&
+ mv \"\$expect\" \"\$GIT_DIR\"/svn/trunk/.rev_db &&
git-svn fetch -i trunk &&
- test -L $GIT_DIR/svn/trunk/.rev_db &&
- test -f \$expect &&
- cmp \$expect $GIT_DIR/svn/trunk/.rev_db
+ test -L \"\$GIT_DIR\"/svn/trunk/.rev_db &&
+ test -f \"\$expect\" &&
+ cmp \"\$expect\" \"\$GIT_DIR\"/svn/trunk/.rev_db
"
test_done
diff --git a/t/t9108-git-svn-glob.sh b/t/t9108-git-svn-glob.sh
index db4344c..eb039ef 100755
--- a/t/t9108-git-svn-glob.sh
+++ b/t/t9108-git-svn-glob.sh
@@ -14,8 +14,8 @@ test_expect_success 'test refspec globbing' "
mkdir -p trunk/src/a trunk/src/b trunk/doc &&
echo 'hello world' > trunk/src/a/readme &&
echo 'goodbye world' > trunk/src/b/readme &&
- svn import -m 'initial' trunk $svnrepo/trunk &&
- svn co $svnrepo tmp &&
+ svn import -m 'initial' trunk \"$svnrepo/trunk\" &&
+ svn co \"$svnrepo\" tmp &&
cd tmp &&
mkdir branches tags &&
svn add branches tags &&
@@ -38,7 +38,7 @@ test_expect_success 'test refspec globbing' "
poke tags/end/src/b/readme &&
svn commit -m 'nothing to see here'
cd .. &&
- git config --add svn-remote.svn.url $svnrepo &&
+ git config --add svn-remote.svn.url \"$svnrepo\" &&
git config --add svn-remote.svn.fetch \
'trunk/src/a:refs/remotes/trunk' &&
git config --add svn-remote.svn.branches \
@@ -60,7 +60,7 @@ echo nothing to see here >> expect.two
cat expect.end >> expect.two
test_expect_success 'test left-hand-side only globbing' "
- git config --add svn-remote.two.url $svnrepo &&
+ git config --add svn-remote.two.url \"$svnrepo\" &&
git config --add svn-remote.two.fetch trunk:refs/remotes/two/trunk &&
git config --add svn-remote.two.branches \
'branches/*:refs/remotes/two/branches/*' &&
diff --git a/t/t9110-git-svn-use-svm-props.sh b/t/t9110-git-svn-use-svm-props.sh
index 6235af4..9df60ba 100755
--- a/t/t9110-git-svn-use-svm-props.sh
+++ b/t/t9110-git-svn-use-svm-props.sh
@@ -8,11 +8,11 @@ test_description='git-svn useSvmProps test'
. ./lib-git-svn.sh
test_expect_success 'load svm repo' "
- svnadmin load -q $rawsvnrepo < ../t9110/svm.dump &&
- git-svn init --minimize-url -R arr -i bar $svnrepo/mirror/arr &&
- git-svn init --minimize-url -R argh -i dir $svnrepo/mirror/argh &&
+ svnadmin load -q \"$rawsvnrepo\" < ../t9110/svm.dump &&
+ git-svn init --minimize-url -R arr -i bar \"$svnrepo/mirror/arr\" &&
+ git-svn init --minimize-url -R argh -i dir \"$svnrepo/mirror/argh\" &&
git-svn init --minimize-url -R argh -i e \
- $svnrepo/mirror/argh/a/b/c/d/e &&
+ \"$svnrepo/mirror/argh/a/b/c/d/e\" &&
git config svn.useSvmProps true &&
git-svn fetch --all
"
diff --git a/t/t9111-git-svn-use-svnsync-props.sh b/t/t9111-git-svn-use-svnsync-props.sh
index ec7dedd..e3693eb 100755
--- a/t/t9111-git-svn-use-svnsync-props.sh
+++ b/t/t9111-git-svn-use-svnsync-props.sh
@@ -8,10 +8,10 @@ test_description='git-svn useSvnsyncProps test'
. ./lib-git-svn.sh
test_expect_success 'load svnsync repo' "
- svnadmin load -q $rawsvnrepo < ../t9111/svnsync.dump &&
- git-svn init --minimize-url -R arr -i bar $svnrepo/bar &&
- git-svn init --minimize-url -R argh -i dir $svnrepo/dir &&
- git-svn init --minimize-url -R argh -i e $svnrepo/dir/a/b/c/d/e &&
+ svnadmin load -q \"$rawsvnrepo\" < ../t9111/svnsync.dump &&
+ git-svn init --minimize-url -R arr -i bar \"$svnrepo/bar\" &&
+ git-svn init --minimize-url -R argh -i dir \"$svnrepo/dir\" &&
+ git-svn init --minimize-url -R argh -i e \"$svnrepo/dir/a/b/c/d/e\" &&
git config svn.useSvnsyncProps true &&
git-svn fetch --all
"
diff --git a/t/t9112-git-svn-md5less-file.sh b/t/t9112-git-svn-md5less-file.sh
index 08313bb..124120c 100755
--- a/t/t9112-git-svn-md5less-file.sh
+++ b/t/t9112-git-svn-md5less-file.sh
@@ -38,8 +38,8 @@ PROPS-END
EOF
-test_expect_success 'load svn dumpfile' "svnadmin load $rawsvnrepo < dumpfile.svn"
+test_expect_success 'load svn dumpfile' "svnadmin load \"$rawsvnrepo\" < dumpfile.svn"
-test_expect_success 'initialize git-svn' "git-svn init $svnrepo"
+test_expect_success 'initialize git-svn' "git-svn init \"$svnrepo\""
test_expect_success 'fetch revisions from svn' 'git-svn fetch'
test_done
diff --git a/t/t9113-git-svn-dcommit-new-file.sh b/t/t9113-git-svn-dcommit-new-file.sh
index 9ef0db9..150d7f0 100755
--- a/t/t9113-git-svn-dcommit-new-file.sh
+++ b/t/t9113-git-svn-dcommit-new-file.sh
@@ -15,14 +15,14 @@ test_description='git-svn dcommit new files over svn:// test'
start_svnserve () {
svnserve --listen-port $SVNSERVE_PORT \
- --root $rawsvnrepo \
+ --root "$rawsvnrepo" \
--listen-once \
--listen-host 127.0.0.1 &
}
test_expect_success 'start tracking an empty repo' "
- svn mkdir -m 'empty dir' $svnrepo/empty-dir &&
- echo anon-access = write >> $rawsvnrepo/conf/svnserve.conf &&
+ svn mkdir -m 'empty dir' \"$svnrepo/empty-dir\" &&
+ echo anon-access = write >> \"$rawsvnrepo/conf/svnserve.conf\" &&
start_svnserve &&
git svn init svn://127.0.0.1:$SVNSERVE_PORT &&
git svn fetch
diff --git a/t/t9114-git-svn-dcommit-merge.sh b/t/t9114-git-svn-dcommit-merge.sh
index d6ca955..ffe8859 100755
--- a/t/t9114-git-svn-dcommit-merge.sh
+++ b/t/t9114-git-svn-dcommit-merge.sh
@@ -35,7 +35,7 @@ EOF
}
test_expect_success 'setup svn repository' "
- svn co $svnrepo mysvnwork &&
+ svn co \"$svnrepo\" mysvnwork &&
mkdir -p mysvnwork/trunk &&
cd mysvnwork &&
big_text_block >> trunk/README &&
@@ -45,7 +45,7 @@ test_expect_success 'setup svn repository' "
"
test_expect_success 'setup git mirror and merge' "
- git svn init $svnrepo -t tags -T trunk -b branches &&
+ git svn init \"$svnrepo\" -t tags -T trunk -b branches &&
git svn fetch &&
git checkout --track -b svn remotes/trunk &&
git checkout -b merge &&
diff --git a/t/t9115-git-svn-dcommit-funky-renames.sh b/t/t9115-git-svn-dcommit-funky-renames.sh
index 182299c..0681ffa 100755
--- a/t/t9115-git-svn-dcommit-funky-renames.sh
+++ b/t/t9115-git-svn-dcommit-funky-renames.sh
@@ -8,12 +8,12 @@ test_description='git-svn dcommit can commit renames of files with ugly names'
. ./lib-git-svn.sh
test_expect_success 'load repository with strange names' "
- svnadmin load -q $rawsvnrepo < ../t9115/funky-names.dump &&
+ svnadmin load -q \"$rawsvnrepo\" < ../t9115/funky-names.dump &&
start_httpd
"
test_expect_success 'init and fetch repository' "
- git svn init $svnrepo &&
+ git svn init \"$svnrepo\" &&
git svn fetch &&
git reset --hard git-svn
"
diff --git a/t/t9116-git-svn-log.sh b/t/t9116-git-svn-log.sh
index 0d4e6b3..890b5f1 100755
--- a/t/t9116-git-svn-log.sh
+++ b/t/t9116-git-svn-log.sh
@@ -14,9 +14,9 @@ test_expect_success 'setup repository and import' "
mkdir -p \$i && \
echo hello >> \$i/README || exit 1
done && \
- svn import -m test . $svnrepo
+ svn import -m test . \"$svnrepo\"
cd .. &&
- git-svn init $svnrepo -T trunk -b branches -t tags &&
+ git-svn init \"$svnrepo\" -T trunk -b branches -t tags &&
git-svn fetch &&
git reset --hard trunk &&
echo bye >> README &&
diff --git a/t/t9500-gitweb-standalone-no-errors.sh b/t/t9500-gitweb-standalone-no-errors.sh
index 642b836..b90e78c 100755
--- a/t/t9500-gitweb-standalone-no-errors.sh
+++ b/t/t9500-gitweb-standalone-no-errors.sh
@@ -45,13 +45,13 @@ gitweb_run () {
export QUERY_STRING=""$1""
export PATH_INFO=""$2""
- export GITWEB_CONFIG=$(pwd)/gitweb_config.perl
+ export GITWEB_CONFIG="$(pwd)/gitweb_config.perl"
# some of git commands write to STDERR on error, but this is not
# written to web server logs, so we are not interested in that:
# we are interested only in properly formatted errors/warnings
rm -f gitweb.log &&
- perl -- $(pwd)/../../gitweb/gitweb.perl \
+ perl -- "$(pwd)/../../gitweb/gitweb.perl" \
>/dev/null 2>gitweb.log &&
if grep -q -s "^[[]" gitweb.log >/dev/null; then false; else true; fi
diff --git a/t/test-lib.sh b/t/test-lib.sh
index cc1253c..a68415f 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -229,7 +229,7 @@ test_create_repo () {
repo="$1"
mkdir "$repo"
cd "$repo" || error "Cannot setup test environment"
- "$GIT_EXEC_PATH/git" init --template=$GIT_EXEC_PATH/templates/blt/ >/dev/null 2>&1 ||
+ "$GIT_EXEC_PATH/git" init --template="$GIT_EXEC_PATH/templates/blt/" >/dev/null 2>&1 ||
error "cannot run git init -- have you built things yet?"
mv .git/hooks .git/hooks-disabled
cd "$owd"
--
1.5.3.1
^ permalink raw reply related
* [PATCH 1/2] Fixing path quoting in git-rebase
From: Jonathan del Strother @ 2007-10-17 9:31 UTC (permalink / raw)
To: git; +Cc: Jonathan del Strother
In-Reply-To: <11926134961610-git-send-email-maillist@steelskies.com>
From: Jonathan del Strother <jon.delStrother@bestbefore.tv>
git-rebase used to fail when run from a path with a space in.
Signed-off-by: Jonathan del Strother <jon.delStrother@bestbefore.tv>
---
git-rebase.sh | 26 +++++++++++++-------------
1 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/git-rebase.sh b/git-rebase.sh
index 1583402..224cca9 100755
--- a/git-rebase.sh
+++ b/git-rebase.sh
@@ -59,7 +59,7 @@ continue_merge () {
die "$RESOLVEMSG"
fi
- cmt=`cat $dotest/current`
+ cmt=`cat "$dotest/current"`
if ! git diff-index --quiet HEAD
then
if ! git-commit -C "$cmt"
@@ -84,14 +84,14 @@ continue_merge () {
}
call_merge () {
- cmt="$(cat $dotest/cmt.$1)"
+ cmt="$(cat "$dotest/cmt.$1")"
echo "$cmt" > "$dotest/current"
hd=$(git rev-parse --verify HEAD)
cmt_name=$(git symbolic-ref HEAD)
- msgnum=$(cat $dotest/msgnum)
- end=$(cat $dotest/end)
+ msgnum=$(cat "$dotest/msgnum")
+ end=$(cat "$dotest/end")
eval GITHEAD_$cmt='"${cmt_name##refs/heads/}~$(($end - $msgnum))"'
- eval GITHEAD_$hd='"$(cat $dotest/onto_name)"'
+ eval GITHEAD_$hd='$(cat "$dotest/onto_name")'
export GITHEAD_$cmt GITHEAD_$hd
git-merge-$strategy "$cmt^" -- "$hd" "$cmt"
rv=$?
@@ -140,10 +140,10 @@ do
}
if test -d "$dotest"
then
- prev_head="`cat $dotest/prev_head`"
- end="`cat $dotest/end`"
- msgnum="`cat $dotest/msgnum`"
- onto="`cat $dotest/onto`"
+ prev_head=$(cat "$dotest/prev_head")
+ end=$(cat "$dotest/end")
+ msgnum=$(cat "$dotest/msgnum")
+ onto=$(cat "$dotest/onto")
continue_merge
while test "$msgnum" -le "$end"
do
@@ -160,11 +160,11 @@ do
if test -d "$dotest"
then
git rerere clear
- prev_head="`cat $dotest/prev_head`"
- end="`cat $dotest/end`"
- msgnum="`cat $dotest/msgnum`"
+ prev_head=$(cat "$dotest/prev_head")
+ end=$(cat "$dotest/end")
+ msgnum=$(cat "$dotest/msgnum")
msgnum=$(($msgnum + 1))
- onto="`cat $dotest/onto`"
+ onto=$(cat "$dotest/onto")
while test "$msgnum" -le "$end"
do
call_merge "$msgnum"
--
1.5.3.1
^ permalink raw reply related
* [PATCH] Quoting paths, take 3
From: Jonathan del Strother @ 2007-10-17 9:31 UTC (permalink / raw)
To: git
In-Reply-To: <B495731E-C854-450B-943B-B96248B8F609@steelskies.com>
These patches attempt to fix things up for people who like to have awkward directory paths including spaces & apostrophes. First patch fixes git-rebase (all other git tools handle these paths fine), second patch fixes up the tests so they can be run from spaced directories.
Third time lucky?
^ permalink raw reply
* Re: [PATCH] Teach "git reflog" a subcommand to delete single entries
From: Wincent Colaiuta @ 2007-10-17 9:24 UTC (permalink / raw)
To: Johannes Schindelin; +Cc: git, spearce, gitster
In-Reply-To: <Pine.LNX.4.64.0710170249260.25221@racer.site>
El 17/10/2007, a las 3:50, Johannes Schindelin escribió:
> This commit implements the "delete" subcommand:
>
> git reflog delete master@{2}
>
> will delete the second reflog entry of the "master" branch.
>
> With this, it should be easy to implement "git stash pop" everybody
> seems to want these days.
Looks good to me. Thanks for taking the initiative, Johannes.
Cheers,
Wincent
^ permalink raw reply
* Re: [PATCH 1/3] Fixing path quoting in git-rebase
From: Jonathan del Strother @ 2007-10-17 9:14 UTC (permalink / raw)
To: Johannes Sixt; +Cc: git
In-Reply-To: <47136D92.8060104@viscovery.net>
On 15 Oct 2007, at 14:39, Johannes Sixt wrote:
> Jonathan del Strother schrieb:
>> - eval GITHEAD_$hd='"$(cat $dotest/onto_name)"'
>> + eval GITHEAD_$hd='"$(cat \"$dotest/onto_name\")"'
>
> I believe this is not correct. It should be this way:
>
> eval GITHEAD_$hd='$(cat "$dotest/onto_name")'
>
> You can test it with a conflicting git-rebase -m. It only affects
> what the conflict markers look like. The test suite does not test it.
Thanks for catching that. I'll post revised patches this morning
^ permalink raw reply
* Re: On Tabs and Spaces
From: Michael Witten @ 2007-10-17 9:09 UTC (permalink / raw)
To: Luke Lu; +Cc: git
In-Reply-To: <3A9408D5-2667-43A6-A0CE-C0720B3A3987@vicaya.com>
On 17 Oct 2007, at 3:17:08 AM, Luke Lu wrote:
> But I still haven't seen any compelling arguments against the "all
> space" case
Overhead!
If you use 8 spaces instead of one tab,
that's using up 7x more space!
Consider:
# calculates the extra space required to
# use the given number of spaces/tab.
size()
{
count=`grep -RIo "\`printf \"\t\"\`" . | wc -l`;
perl -e "print $count*$(($1-1))/1024/1024 . \" MB\n\"";
}
Then in in a git working tree:
size 8; # 1.28701210021973 MB
size 4; # 0.551576614379883 MB
In a linux kernel working tree:
size 8; # 61.4902725219727 MB
size 4; # 26.3529739379883 MB
Conclusion:
Yikes!
I hate tabs, but I can't argue with that!
Michael Witten
^ permalink raw reply
* Re: [PATCH 1/6] more compact progress display
From: Karl Hasselström @ 2007-10-17 8:20 UTC (permalink / raw)
To: Shawn O. Pearce; +Cc: Nicolas Pitre, git
In-Reply-To: <20071017021137.GO13801@spearce.org>
On 2007-10-16 22:11:37 -0400, Shawn O. Pearce wrote:
> Nicolas Pitre <nico@cam.org> wrote:
>
> > Each progress can be on a single line instead of two.
>
> Nice. Of course that screws with git-gui and now I have to match two
> regexs and not one. But whatever.
Maybe an env variable could cause the code to emit machine-friendly
progress information instead?
--
Karl Hasselström, kha@treskal.com
www.treskal.com/kalle
^ permalink raw reply
* Re: revised: [PATCH] Color support added to git-add--interactive.
From: Shawn O. Pearce @ 2007-10-17 8:11 UTC (permalink / raw)
To: Dan Zwell
Cc: Jeff King, Wincent Colaiuta, Git Mailing List,
Jonathan del Strother, Johannes Schindelin, Frank Lichtenheld
In-Reply-To: <cff973550710170057i7a09eff6m5bd8268498774238@mail.gmail.com>
Dan Zwell <dzwell@gmail.com> wrote:
> Sorry, that I didn't read the document on submitting patches before
> this. I will make the other changes you mention and re-send this in
> the proper formatting.
I really should have pointed you to Documentation/SubmittingPatches
when I responded to your email in the first place. Sorry I didn't
do that. Looks like you already found it though so good.
> > > +Note: these are not the same colors/attributes that the
> > > +rest of git supports, but are specific to git-add--interactive.
> >
> > This is a problem in my opinion. Why can't it match the same
> > names that the C code recognizes? What if we one day were to
> > see git-add--interactive.perl converted to C? How would we then
> > reconcile the color handling at that point in time?
>
> Makes sense. I am adding a bit of code to parse git color strings into
> perl color strings (so the user can use the same color names as with
> the rest of git). I know this is a small change, but I'm learning perl
> as I go, and I have exams this week, so it will take at least a day or
> two. I will fix the color issue, and send a properly formatted and
> signed-off patch. (Yes, I do agree to the Developer's Certificate of
> Origin wrt to this patch.)
>
> Thanks for your patience,
Thanks for working on this. I played around with your patch tonight
and although I use git-gui more often than `git add -i` for hunk
manipulation I really preferred your colorized version of git-add
-i over the non-colorized one. So I'm looking forward to seeing
the final result of this and getting it into the main tree.
Of course there is also no rush to getting your change in. We don't
have any sort of release deadlines. So don't stress out about it
too much. :)
--
Shawn.
^ permalink raw reply
* Re: revised: [PATCH] Color support added to git-add--interactive.
From: Dan Zwell @ 2007-10-17 7:57 UTC (permalink / raw)
To: Shawn O. Pearce
Cc: Jeff King, Wincent Colaiuta, Git Mailing List,
Jonathan del Strother, Johannes Schindelin, Frank Lichtenheld
In-Reply-To: <20071017015152.GN13801@spearce.org>
On 10/16/07, Shawn O. Pearce <spearce@spearce.org> wrote:
> Dan Zwell <dzwell@gmail.com> wrote:
> > Adds color to the prompts and output of git-add--interactive.
>
> I'm probbaly going to publish this in `pu` tonight but I have some
> comments that I think need to be addressed before this graduates
> any further.
>
> First off, no Signed-off-by? This is big enough that I refuse to
> put it in the main tree without one. Second it would really have
> helped if the email was formatted with `git format-patch`. Copying
> the message headers and body over for the commit message was less
> than fun. I have better things to do with my time.
Sorry, that I didn't read the document on submitting patches before
this. I will make the other changes you mention and re-send this in
the proper formatting.
>
> > +color.interactive.<slot>::
> > + Use customized color for add--interactive output. `<slot>`
>
> You probably should talk about `git add --interactive` as that
> is what the git-add documentation calls it. Many end-users don't
> even know that `git add -i` is exec()'ing into another program to
> accomplish its task. I fixed this up when I applied the patch.
>
> > +Note: these are not the same colors/attributes that the
> > +rest of git supports, but are specific to git-add--interactive.
>
> This is a problem in my opinion. Why can't it match the same
> names that the C code recognizes? What if we one day were to
> see git-add--interactive.perl converted to C? How would we then
> reconcile the color handling at that point in time?
Makes sense. I am adding a bit of code to parse git color strings into
perl color strings (so the user can use the same color names as with
the rest of git). I know this is a small change, but I'm learning perl
as I go, and I have exams this week, so it will take at least a day or
two. I will fix the color issue, and send a properly formatted and
signed-off patch. (Yes, I do agree to the Developer's Certificate of
Origin wrt to this patch.)
Thanks for your patience,
Dan
>
> --
> Shawn.
>
^ permalink raw reply
* Re: git-cherry-pick no longer detecting moved files in 1.5.3.4
From: Richard Quirk @ 2007-10-17 7:55 UTC (permalink / raw)
To: Shawn O. Pearce; +Cc: git
In-Reply-To: <20071017073357.GA13801@spearce.org>
On 10/17/07, Shawn O. Pearce <spearce@spearce.org> wrote:
>
> That's an "old" bug. Lars Hjemli fixed this in df3a02f612 back on
> Sept 25th. You can get the fix from either Junio's or my git tree
> in the master branch.
Yes, with that fix setting the diff.renamelimit config value to 0
really does work. Thanks!
^ permalink raw reply
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