github.com یه سایت برای کمک به مدیریت توسعهء نرم افزار هست که سورس خودتون رو اونجا میذارید بعنوان یک منبع مرکزی و هماهنگ کننده که میتونید اون رو با همگان یا تیم خودتون به اشتراک بذارید؛ میتونه هم در پروژه های بازمتن و هم در پروژه های انحصاری استفاده بشه.
البته این کار توسط نرم افزار خاصی بنام git انجام میشه که ارتباط شما با سایت github.com بطور معمول از طریق نسخهء محلی نرم افزار git که روی ماشین خودتون اجرا میکنید صورت میگیره.
این نرم افزار امکان این رو میده که براحتی از نسخه های مختلف کدتون بکاپ بگیرید، علامتگذاری کنید، برگشت بدید، چند نسخه/کد رو با هم به اصطلاح merge کنید، اختلاف میان کدها رو علامتگذاری میکنه و نمایش میده و غیره. سرعتش هم خیلی بالاست (git هم با سی نوشته شده تاجاییکه میدونم - ضمنا مولف اصیلش همون لینوس توروالدز معروف که هستهء سیستم عامل لینوکس رو هم بوجود آورد میباشند).
با کمک برنامه های revision control مثل git کار توسعه و مدیریت نرم افزارهای بزرگ و پیچیده راحتتر میشه، خصوصا وقتی که کار تیمی باشه. ممکنه چند نفر همزمان روی یک بخش کار کنن، روی شاخه ها و نسخه های متفاوت یا یکسان و غیره.
اینم سورس مفسر PHP در گیت هاب:
https://github.com/php/php-src
بنده قبلا یادم هست چند قطعه کدش رو که مربوط به تولید کنندهء اعداد رندوم میشدن بررسی کردم بودم که ببینم منبع آنتروپی استفاده شده برای اونها دقیقا چیه و تا چه حد آنتروپی و امنیت میده. البته فکر کنم اشتباه کردم و اون موقع PHP هنوز روی github نبود (به گمانم یه جایی روی خود php.net بود، و احتمالا تحت یک نرم افزار revision control غیر از git).
راستی من خودمم روی github یه پروژهء PHP دارم:
https://github.com/ferchang/reg8log
البته من شخصا زیاد نیازی به github برای توسعهء این برنامه نداشتم، چون یه پروژهء شخصی و انفرادی بود و منم زیاد با روشها و اصول استاندارد مهندسی نرم افزار کار نمیکنم و اصرار ندارم روشون؛ اما بخاطر بکاپ گیری و به اشتراک گذاشتن با دیگران اون رو روی گیت هاب گذاشتم.