Any shadowy super coder can help me make my first pull request? I know what file to edit and how to edit it. Just not sure about the process of an actual pull request. Do I fork the whole project? What to do from there? Can I PR some lines or do I need to PR the whole file or even project?
Discussion
yep, fork the project. Push your commits to main or to a branch in the fork. Then you can use the UI to create a pull req. Optional but nice, in the pull req or commits you can reference a GitHub issue with #123 (issue number with pound #)
Thanks! How do forks work? Is it a mirror of the project, including new development? Or do toy make a fork of the project at that exact moment and new development won't get added to the fork?
Let's say I'm slow and the file gets some developtment, will the PR be based on an old state?
you do have to keep your fork up to date sometimes, to maximize the chances of your pull-req being accepted or if there is a conflict. you can 'float' your commits by rebasing from main once in a while. example of my workflow:
you clone the project like normal from main
first you make the fork in github
in that same checkout locally, you add a remote for your new fork: git remote add -f mee git@github.com:mee/amethyst.git
now you can do things like: git checkout -b mee_main --track mee/main
commit your changes to mee_main, then push to mee_main
git push --tags mee HEAD:main
then you can make a pull req.
to update this with latest commits you would:
git checkout main
git pull
git checkout mee_main
git rebase -i main
the rebase will interactively help you float your commits or squash them
after doing a rebase like this, you have to force push your fork, but the benefit is the easy merge by the upstream
git push -f mee HEAD:main
Follow up question for shadowy super coders:
The project got multiple languages and because of this multiple files to edit. Can I make one pull request with multiple files, or do I need to PR each file edit?