Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fbrnch clone is not equivalent with fedpkg clone #62

Closed
LecrisUT opened this issue Oct 1, 2024 · 2 comments
Closed

fbrnch clone is not equivalent with fedpkg clone #62

LecrisUT opened this issue Oct 1, 2024 · 2 comments

Comments

@LecrisUT
Copy link

LecrisUT commented Oct 1, 2024

The differences I've found so far:

  • fedpkg clone populates a .git/hooks/pre-push

    #!/bin/bash
    
    # This file was generated by fedpkg when cloning the repository.
    # You can edit it to your liking or delete completely. It will not
    # be recreated.
    # Creating this file can be also prevented by adding an option
    # "skip_hooks = True" into the fedpkg's config file; [fedpkg] section.
    
    _remote="$1"
    _url="$2"
    
    exit_code=0
    while read -r _local_ref local_sha _remote_ref _remote_sha
    do
        command -v fedpkg >/dev/null 2>&1 || { echo >&2 "Warning: 'fedpkg' is missing, \
    pre-push check is omitted. See .git/hooks/pre-push"; exit 0; }
        fedpkg pre-push-check "$local_sha"
        ret_code=$?
        if [ $ret_code -ne 0 ] && [ $exit_code -eq 0 ]; then
            exit_code=$ret_code
        fi
    done
    
    exit $exit_code
  • fedpkg clone populates a .git/info/exclude

    i386/
    i686/
    x86_64/
    ppc/
    ppc64/
    ia64/
    mips/
    arm/
    noarch/
    /*.src.rpm
    /build*.log
    /.build-*.log
    results/
    results_*/
    clog
    
  • fedpkg sets up some additional git-configs, but these might be skipped.

    [credential]
            helper = /usr/bin/fedpkg gitcred
            useHttpPath = true
    [bz]
            default-tracker = bugzilla.redhat.com
            default-product = Fedora
            default-version = rawhide
            default-component = rust-logos
    [sendemail]
            to = [email protected]
    

I think it would be useful to synchronize it as much as possible because the user might be switching from one tool to the other, and artifacts from fedpkg srpm/mockbuild would not be nicely ignored.

@juhp
Copy link
Owner

juhp commented Nov 29, 2024

Thank you very much for this I was not aware.

Hmm maybe i should just wrap fedpkg clone then or see if there is a way to get closer.

@juhp
Copy link
Owner

juhp commented Nov 29, 2024

This should be in 1.5.1

(I haven't measured (benchmarked) though, but my guess is that fedpkg clone is significantly slower than git clone 😢
Though admittedly network time is likely still the biggest bottleneck for most users.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants