From Fedora Project Wiki

< CI

m (Style)
m (add missing words)
Line 38: Line 38:
 
=== Open a pull-request ===
 
=== 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 in the main page of the project.
+
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.
  
  
 
{{admon/tip|Working with Pull Requests|You may encounter a situation where you want to include changes from the master branch that were made after you created your pull request. Follow the article [https://docs.pagure.org/pagure/usage/pull_requests.html#working-with-pull-requests/ Working with Pull Requests]}}
 
{{admon/tip|Working with Pull Requests|You may encounter a situation where you want to include changes from the master branch that were made after you created your pull request. Follow the article [https://docs.pagure.org/pagure/usage/pull_requests.html#working-with-pull-requests/ Working with Pull Requests]}}

Revision as of 08:22, 7 August 2018

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)

So check the version of the packages you have installed: rpm -q python2-openidc-client python2-rpkg fedpkg

and potentially, update them: sudo dnf update python-openidc-client fedpkg python-rpkg --enablerepo=updates-testing

To push via https, your git repository needs to be configured in a certain way (ie: 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.


Warning.png
Username/Password
If you ever see the CLI asking you for an username and/or password, your git repo is not correctly configured. The only place that should be asking you for an username and password is https://id.fedoraproject.org


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.


Idea.png
Working with Pull Requests
You may encounter a situation where you want to include changes from the master branch that were made after you created your pull request. Follow the article Working with Pull Requests