[pacman-dev] [PATCH 1/2] makepkg: git clone instead of git fetch if $dir exists but empty

Allan McRae allan at archlinux.org
Sun Aug 12 02:57:56 EDT 2012


On 12/08/12 10:24, Mohammad Alsaleh wrote:
> Before this patch, makepkg would only check if $dir exists as an
> indication that a local clone exists. And if $dir does exist, makepkg
> will run git fetch inside it unconditionally.
> 
> After applying this patch, makepkg will check if the existent $dir is
> empty. And if it is, it will be used to store a local clone.
> 
> Signed-off-by: Mohammad Alsaleh <msal at i2pmail.org>

Ack.

I assume we should also check this for svn and hg...

> ---
>  scripts/makepkg.sh.in | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
> index 270f988..6c0e821 100644
> --- a/scripts/makepkg.sh.in
> +++ b/scripts/makepkg.sh.in
> @@ -396,7 +396,7 @@ download_git() {
>  	url=${url##*git+}
>  	url=${url%%#*}
>  
> -	if [[ ! -d "$dir" ]]; then
> +	if [[ ! -d "$dir" ]] || dir_is_empty "$dir" ; then
>  		msg2 "$(gettext "Cloning %s %s repo...")" "${repo}" "git"
>  		if ! git clone --mirror "$url" "$dir"; then
>  			error "$(gettext "Failure while downloading %s %s repo")" "${repo}" "git"
> 



More information about the pacman-dev mailing list