Open Ankitagulati4 opened 6 years ago
Hey @Ankitagulati4 It would help us understand your query if you can fill up the issue template.
Hello @Ankitagulati4,
Thank you for responding to @kshitij10496's comment. (Although you should comment as well, to notify the people watching this repository).
How I will start contributing in open source like in big projects I am new to open source and I dont know how to start with it and I actually want to contribute to the projects but how can I find it.
If you go through this question from the perspective of a reader, it appears as if it's put out in a confused state. Let me try to break it down into the queries I am able to understand.
Question: I am new to open source and I do not know how to start with it. My answer: On doing a Google search, a very nice resource is shown as a result. https://opensource.guide/how-to-contribute/ The whole opensource.guide is a great community-written guide. Hope you'll take time to read through it.
Question: I actually want to contribute to the projects but how can I find it My answer: Kudos! GitHub contains massive number of open source projects (including this repository). There are several ways of finding projects to contribute to:
You just need to be in the community and projects will follow. :)
Question: How do I contribute to big projects? My answer: By "big projects", if you mean the organizations with very vast userbase e.g. git, mozilla, KDE, Ubuntu, Linux Kernel, Tor, etc. then I'll request @pranitbauva1997 (git) @pratham-pc (git) @madan96 (mercurial) to answer this question. I find that these projects are highly focused on their goal of producing quality software and getting beginners is not their top-most priority. Hence, I would personally recommend you to try out smaller projects on GitHub (to learn the workflow of contribution) and then dive on to these projects, which can significantly affect/improve your career.
Cheers!
@Ankitagulati4 this is a great question which many people want to know the answer to. Thanks @OrkoHunter for a general answer about getting started. I would like to share some specific things (which worked for me). A small disclaimer, many people have different approaches which are suited to different projects. But on an average, this should work.
The steps roughly are:
apt
or dpkg -i *.deb
)README
, CodingGuidelines
, SubmittingPatches
fully, get a local copy via git clone
.Issues
tab on Github)git-grep
to find all occurances of that word in the source code which will include the places where it is defined as well as the places where it is used and the developer documentation. To filter out the places where it is defined, use some specific expressions for matching in the git-grep
argument.git-blame
and search the commit history which will explain the change. Use this extensively with git-log
and git-show
. travis-build
. Note: If the software doesn't have a travis-build or a test suite, it can be a good first issue.git-rebase -i
the commits, make the relevant changes with git-commit --amend
Of course, I have just given an overview and purposely used some words which one might not know which is exactly the reason I used them. Try searching about those words on Google explicitly and understand what it is. The best way to do it is by actually trying this out.
Also I intend to write a blog post which I will do soon. I will share here once I complete it.
NOTE: How to Ask Questions the Smart Way
What is your query?
Is this question specific to a participating organization?
Have you read the FLOSS Manual yet?
Have you read the questions in the README?
Did you Google search this before posting?
Do you think this question will help other applicants?