threads / patch / 6492

patch, 4 partsmerge-one-file: use 'wc' more portably

Subject: [PATCH 2/4] merge-one-file: use 'wc' more portably

## tl;dr

3 messages between Jan 24, 2007 and Jan 25, 2007. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Johannes Schindelin· Jan 24, 2007, 01:13 UTC · lore
Some wc prefix the number by a tab. Be prepared for this.
Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
---
 git-merge-one-file.sh |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
Show changes to git-merge-one-file.sh +2 −2
diff --git a/git-merge-one-file.sh b/git-merge-one-file.sh
index 7d62d79..bc7c5ef 100755
--- a/git-merge-one-file.sh
+++ b/git-merge-one-file.sh
@@ -87,9 +87,9 @@ case "${1:-.}${2:-.}${3:-.}" in
 		# This extracts OUR file in $orig, and uses git-apply to
 		# remove lines that are unique to ours.
 		orig=`git-unpack-file $2`
-		sz0=`wc -c <"$orig"`
+		sz0=`wc -c <"$orig" | tr -dc 0-9`
 		diff -u -La/$orig -Lb/$orig $orig $src2 | git-apply --no-add 
-		sz1=`wc -c <"$orig"`
+		sz1=`wc -c <"$orig" | tr -dc 0-9`
 
 		# If we do not have enough common material, it is not
 		# worth trying two-file merge using common subsections.
-- 
1.5.0.rc2.gc5868-dirty
Junio C Hamano· Jan 25, 2007, 00:09 UTC · re: Johannes Schindelin · lore

Re: [PATCH 2/4] merge-one-file: use 'wc' more portably

Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
Show 23 quoted lines
> Some wc prefix the number by a tab. Be prepared for this.
>
> Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
> ---
>  git-merge-one-file.sh |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/git-merge-one-file.sh b/git-merge-one-file.sh
> index 7d62d79..bc7c5ef 100755
> --- a/git-merge-one-file.sh
> +++ b/git-merge-one-file.sh
> @@ -87,9 +87,9 @@ case "${1:-.}${2:-.}${3:-.}" in
>  		# This extracts OUR file in $orig, and uses git-apply to
>  		# remove lines that are unique to ours.
>  		orig=`git-unpack-file $2`
> -		sz0=`wc -c <"$orig"`
> +		sz0=`wc -c <"$orig" | tr -dc 0-9`
>  		diff -u -La/$orig -Lb/$orig $orig $src2 | git-apply --no-add 
> -		sz1=`wc -c <"$orig"`
> +		sz1=`wc -c <"$orig" | tr -dc 0-9`
>  
>  		# If we do not have enough common material, it is not
>  		# worth trying two-file merge using common subsections.

I would prefer losing dq around the $sz0 and $sz1 where they are used, instead of spawning tr here, and also tighten error checking by stringing these command sequence with && followed by a || exit.

Johannes Schindelin· Jan 25, 2007, 08:35 UTC · re: Junio C Hamano · lore

Re: [PATCH 2/4] merge-one-file: use 'wc' more portably

Hi,
On Wed, 24 Jan 2007, Junio C Hamano wrote:
Show 30 quoted lines
> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> 
> > Some wc prefix the number by a tab. Be prepared for this.
> >
> > Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
> > ---
> >  git-merge-one-file.sh |    4 ++--
> >  1 files changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/git-merge-one-file.sh b/git-merge-one-file.sh
> > index 7d62d79..bc7c5ef 100755
> > --- a/git-merge-one-file.sh
> > +++ b/git-merge-one-file.sh
> > @@ -87,9 +87,9 @@ case "${1:-.}${2:-.}${3:-.}" in
> >  		# This extracts OUR file in $orig, and uses git-apply to
> >  		# remove lines that are unique to ours.
> >  		orig=`git-unpack-file $2`
> > -		sz0=`wc -c <"$orig"`
> > +		sz0=`wc -c <"$orig" | tr -dc 0-9`
> >  		diff -u -La/$orig -Lb/$orig $orig $src2 | git-apply --no-add 
> > -		sz1=`wc -c <"$orig"`
> > +		sz1=`wc -c <"$orig" | tr -dc 0-9`
> >  
> >  		# If we do not have enough common material, it is not
> >  		# worth trying two-file merge using common subsections.
> 
> I would prefer losing dq around the $sz0 and $sz1 where they are
> used, instead of spawning tr here, and also tighten error
> checking by stringing these command sequence with && followed by
> a || exit.

I only needed a quick fix to make it work on my machine. The fact that it was broken for so long, unnoticed by me, shows that this code path was rarely -- if at all -- used.

But since I want it builtin, I don't want to spend time on the script...

Ciao, Dscho

← back to recent threads