Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

copr-distgit-client to support ssh-cloned repositories

オープン 初心者向け
#95 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
65/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
git, github, python
領域
cli, devtools

調査の方向性

まず、トレースバックに示されたホスト名の検索箇所付近にある copr_distgit_client.py の get_distgit_config の処理を読み、続いてリポジトリのリモート URL の解析方法を追ってください。提示された SSH クローンと設定で再現し、動作する HTTPS の origin と比較してください。SSH クローンで設定済みの GitHub ホストが解決され、copr-distgit-client が KeyError なしで完了すれば完了です。

索引モデルが issue の本文から書いたものです。

説明

With this config:

$ cat /etc/copr-distgit-client/konflux-fedora-rpms.ini 
[konflux-fedora-rpms]
clone_hostnames = github.com
path_prefixes = /konflux-fedora-rpm-packages
lookaside_location = https://src.fedoraproject.org
lookaside_uri_pattern = repo/pkgs/rpms/{name}/{filename}/{hashtype}/{hash}/{filename}
cloning_pattern = https://github.com/konflux-fedora-rpm-packages/{package}.git

When I have a clone from [email protected]:konflux-fedora-rpm-packages/libecpg.git I get
a failure:

$ copr-distgit-client 
Traceback (most recent call last):
  File "/usr/bin/copr-distgit-client", line 10, in <module>
    main()
  File "/usr/lib/python3.12/site-packages/copr_distgit_client.py", line 474, in main
    sources(args, config)
  File "/usr/lib/python3.12/site-packages/copr_distgit_client.py", line 224, in sources
    parsed_url, distgit_config = get_distgit_config(config, args.forked_from)
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/copr_distgit_client.py", line 186, in get_distgit_config
    prefixes = config["clone_host_map"][hostname]
               ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
KeyError: 'localhost'

Works fine with origin = https://github.com/konflux-fedora-rpm-packages/libecpg.git

主要言語
Python
スター
140
フォーク
40
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

release-engineering/dist-git のほかの issue

release-engineering/dist-git の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。