Pull Requests
Fedora is running pagure on the top of its dist-git at https://src.fedoraproject.org.
Having pagure on the top of dist-git means you can use the fork/pull-request workflow. To use this workflow there are two situations to consider:
You are a packager
If you are a packager, you have ssh access to dist-git, so you can use pagure directly. Find the repository you would like to contribute to, fork it via the fork button at the top right. Wait a couple of minutes for the git repository and its access to be re-generated. Clone locally using the ssh URL and interact with this git repo as you would do normally.
You are NOT a packager
Contributors that are not in the packager group cannot ssh into dist-git. This is for security reasons and will not be changed.
However, pagure on dist-git supports now pushing via https.
For this you will need the following packages:
-
python-openidc-client >= 0.6.0 (available in updates-testing)
-
rpkg >= 1.55 (available in updates)
-
fedpkg >= 1.34 (available in updates)
Older Fedoras |
So check the version of the packages you have installed:
rpm -q python3-openidc-client python3-rpkg fedpkg
and potentially, update them:
sudo dnf update python3-openidc-client fedpkg python3-rpkg --enablerepo=updates-testing
To push via https, your git repository needs to be configured in a certain way (i.e. you need to have a [credential]
section in your .git/config
).
There are two ways you can have this.
-
Clone your git repo using
fedpkg -a
for example:
fedpkg clone -a forks/pingoufpca/rpms/fedora-gather-easyfix
In this case fedpkg will take care of setting up correctly your git repository allowing you to push using
git push
-
Clone your git repo using
git clone https://...
and push using
fedpkg push
Here as well, fedpkg will take care of configuring correctly your git repository.
Username/Password |
Open a pull-request
Once you have pushed your commits to your fork, you can navigate to your fork in the UI and open the pull-request using either the New PR button appearing next to the branch you pushed into or on the main page of the project.
Working with Pull Requests |