# [PATCH] Improve can_hardlink diagnostics, remove suggest_hardlink

2 messages from 2005-08-23 to 2005-09-12. Participants: Pavel Roskin, Petr Baudis.
Thread: https://gitlist.dev/t/1625

## Pavel Roskin, 2005-08-23 16:23

Subject: [PATCH] Improve can_hardlink diagnostics, remove suggest_hardlink
Message-ID: <1124814238.11038.6.camel@dv>
URL: https://gitlist.dev/e/1124814238.11038.6.camel%40dv

```
Hello!

suggest_hardlink is write-only in cg-pull - remove it.  can_hardlink
should not be shown to the user as is (it's either "l" or empty) - we
should output something meaningful instead.

Signed-off-by: Pavel Roskin <proski@gnu.org>

diff --git a/cg-pull b/cg-pull
--- a/cg-pull
+++ b/cg-pull
@@ -207,7 +207,6 @@ fetch_local()
 	cp_flags_l="-vdpR"
 	if [ "$1" = "-u" ]; then
 		cp_flags_l="$cp_flags_l -fu$can_hardlink"
-		suggest_hardlink=
 		shift
 	fi
 
@@ -293,12 +292,16 @@ else
 	symlinked=
 	is_same_repo "$_git_objects" "$uri/objects" && symlinked=1
 
-	# See if we can hardlink and drop "l" if not.
+	# See if we can hardlink and add "-l" to cp flags.
 	can_hardlink=
 	sample_file=$(find $uri -type f -print | head -n 1)
 	rm -f $_git/.,,lntest
-	ln "$sample_file" "$_git/.,,lntest" 2>/dev/null && can_hardlink=l
-	echo $can_hardlink
+	if cp -fl "$sample_file" "$_git/.,,lntest" 2>/dev/null; then
+		can_hardlink=l
+		echo "Using hard links"
+	else
+		echo "Hard links don't work - using copy"
+	fi
 	rm -f $_git/.,,lntest
 fi
 


-- 
Regards,
Pavel Roskin

```

## Petr Baudis, 2005-09-12 00:14

Subject: Re: [PATCH] Improve can_hardlink diagnostics, remove suggest_hardlink
Message-ID: <20050912001450.GD15630@pasky.or.cz>
URL: https://gitlist.dev/e/20050912001450.GD15630%40pasky.or.cz
In-Reply-To: <1124814238.11038.6.camel@dv>

```
Dear diary, on Tue, Aug 23, 2005 at 06:23:58PM CEST, I got a letter
where Pavel Roskin <proski@gnu.org> told me that...
> Hello!

Hello,

> suggest_hardlink is write-only in cg-pull - remove it.  can_hardlink
> should not be shown to the user as is (it's either "l" or empty) - we
> should output something meaningful instead.

actually, the infamous "l" output was just a leftover debugging print I
forgot to remove. ;-) Well, I guess it doesn't hurt if the user is
notified whether hardlinking is done or not.

-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
If you want the holes in your knowledge showing up try teaching
someone.  -- Alan Cox

```
