একটা fork GitHub-এ তৈরি করা অন্য কারো repository-র একটা personal কপি — আসলটাতে সরাসরি write access দরকার ছাড়াই একটা project-এ contribute করার standard উপায়।
| ধাপ | কী ঘটে |
|---|---|
| 1. Fork | আসল repo-তে "Fork" click করুন — GitHub আপনার নিজের account-এ একটা পূর্ণ কপি তৈরি করে |
| 2. আপনার fork Clone করুন | git clone your-fork-url — locally এতে কাজ করুন, অন্য যেকোনো repository-র মতোই |
| 3. Branch ও commit | পরিবর্তনের জন্য একটা branch তৈরি করুন, সাধারণত commit করুন — আগের branching lesson সরাসরি প্রযোজ্য |
| 4. আপনার Fork-এ Push করুন | git push — আসলটায় না, আপনার কপিতে commit পাঠায় |
| 5. একটা Pull Request খুলুন | GitHub থেকে, আপনার fork-এর branch আসল repository-তে merge করার প্রস্তাব দিন |
একটা pull request (PR) একটা branch-কে আরেকটাতে merge করার একটা request, একটা diff view, একটা comment thread, আর (প্রায়ই) automated check সহ — কোড main project-এর অংশ হওয়ার আগের review step।
| Section | যা দেখায় |
|---|---|
| Conversation tab | বর্ণনা আর PR-এর প্রতিটা comment |
| Commits tab | PR-এ অন্তর্ভুক্ত প্রতিটা আলাদা commit |
| Files changed tab | স্পর্শ করা প্রতিটা file-এর একটা পূর্ণ diff — আগের git diff lesson-এর একই +/- format |
| Merge button | Check pass আর (সাধারণত) একজন reviewer approve করলে উপলব্ধ |
একটা fork তৈরি হওয়ার পর আসল repository চলতে থাকে — এর নতুন পরিবর্তন pull করা একটা fork-কে পিছিয়ে পড়া থেকে আটকায়।
git remote add upstream https://github.com/original-owner/repo-name.git
git fetch upstream
git merge upstream/mainএকটা PR আগেই খোলা ঠিক আছে
খোলার আগে একটা pull request "শেষ" হতে হবে না — এটা একটা কাজ-চলছে তার একটা স্পষ্ট note সহ আগেই খোলা একটা draft PR, বেশি সময় বিনিয়োগ করার আগে direction নিয়ে early feedback পাওয়ার একটা সম্পূর্ণ স্বাভাবিক আর স্বাগত জানানো উপায়।