آموزش مقدماتی git

گیت چیست؟

گیت یا git یک برنامه آزاد و متن باز برای مدیریت پروژه های برنامه نویسی هست که بسیار سریع و موثر می تواند به برنامه نویسان برای مدیریت پروژه های کوچک تا بزرگ کمک دهد. یادگیری و استفاده از گیت بسیار ساده است و امکانات بسیار قابل توجهی در اختیار برنامه نویسان قرار می دهد.

از توانایی های این نرم افزار می توان به نمونه های زیر اشاره کرد:

  • به شما امکان مدیریت پروژه های چند نفره را می دهد
  • به سادگی می توان تغییرات را ثبت، دنبال، و بازگردانی کرد
  • می تواند به یک سرور وصل شود تا علاوه بر داشتن یک بکاپ از کل پروژه آن را با دیگران به اشتراک بگذارید
  • امکان استفاده از چند شاخه، ادغام و مدیریت شاخه ها
  • و ...

من خودم به شخص قبلا فکر می کردم که گیت فقط برای پروژه های گروهی مناسب هست و زمانی از گیت و سایت هایی مانند گیتهاب و notabug استفاده کردم که برای اولین بار با فاروق کریمی زاده پروژه مشترک داشتیم؛ و از آن جا که شیوه یادگیری من و فاروق شبیه به پریدن وسط چهارمتری برای یادگیری شنا هست اول پروژه را آغاز و بعد به فکر یادگیری گیت افتادیم! برای همین گاها (دو سه باری) اشتباهاتی رخ می داد که برای جبران اون مجبور بودیم ساعت ها تو سایت های مختلف روش های مختلف رو امتحان کنیم و با پیغام خطا های مختلف روبرو بشیم! ولی به هر حال تونستیم تجربیات خوبی به دست بیاریم.

البته که یادگیری گیت بسیار فراتر از این مطلب است و تمام آموزش ها در مستندات خود گیت و در سوالاتی که در سایت هایی مثل stackoverflow.com هستند قابل جست و جو هستند و تمام آن ها در این مطلب قابل گنجاندن نیست، ولی در این مطلب سعی شده تا بخشی از پرکاربردترین و نکات اولیه گیت گنجانده شود تا برنامه نویسان تازه کار بتوانند سریع تر و راحت تر آن را یاد بگیرند و از آن استفاده کنند.

ادامه مطلب...
مجوز مطالب و محتوا ۰۱ ارديبهشت ۰۰ ، ۲۲:۲۰ ۰ نظر موافقین ۳ مخالفین ۰
بهنام سیم جو

ربات تلگرامی وبلاگ

@PCworms_Bot

ربات وبلاگ هم مجددا راه اندازی شد. این دفعه خودم نوشتمش و می تونید در github.com/bsimjoo/Telegram-RSS-Bot سورسش رو ببینید.

مجوز مطالب و محتوا ۰۶ فروردين ۰۰ ، ۲۱:۴۸ ۰ نظر موافقین ۱ مخالفین ۰
بهنام سیم جو

شمارنده تک رقمی با ATmega8 و 7-seg

سون سگمنت (Seven-segment) یک قطعه برای نمایش ارقام و بعضی حروف خاص هست. حتما سون سگمنت ها رو تو آسانسور یا محافظ کولر (اونایی که ولت سنج دارن) یا روی بعضی کولر ها برای نمایش دما دیدید. این قطعه دارای هفت LED اصلی برای نمایش ارقام و ... و یک LED اختیاری برای نقطه هست که در واقع برای کامل شدن یک بایت (8 بیت) اضافه می شود. از آن جا که این قطعه از LED ها تشکیل شده دارای دو نوع کاتد مشترک (com-cathode) و آند مشترک (com-anode) که در آن ها به ترتیب پایه های منفی آن ها یا مثبت آن ها به هم وصل شده اند. البته که این تفاوت در ظاهر و کارکرد فرقی نخواهد داشت اما در زمان برنامه نویسی تفاوت هایی هست.

همانطور که می بینید بخش های اصلی یک سون سگمنت با حروف A تا G نام گذاری شده اند و نقطه که اختیاری است با حرف DP که مخفف Decimal point است نام گذاری می شود.

ادامه مطلب...
مجوز مطالب و محتوا ۰۲ اسفند ۹۹ ، ۱۳:۰۹ ۰ نظر موافقین ۱ مخالفین ۰
بهنام سیم جو

مبانی عددی

مبانی عددی از جمله مباحث مهم در رشته کامپیوتر و الکترونیک هست و از آنجا که به تازگی به موضوع AVR پرداختم لازم شد تا حتما یک مطلب در این باره بنویسم. مبنای عددی از گذشته های دور در ریاضیات وجود داشته و سبب شکل گیری دنیای دیجیتال شد. اعدادی که امروزه عموم مردم دنیا از آن ها استفاده می کنند مبنای ده هستند ولی افرادی هم بوده اند که از مبنا های عددی دیگر استفاده می کردند. امروزه مبنا های پرکاربرد دیگر شامل مبنای دو (باینری)، مبنای 8 (اوکتال) و مبنای 16 (هکس) هم هستند. به طور کل مبنای عددی روش ها گوناگون نمایش مقادیر عددی هست.

ادامه مطلب...
مجوز مطالب و محتوا ۲۶ بهمن ۹۹ ، ۰۹:۳۸ ۱ نظر موافقین ۱ مخالفین ۰
بهنام سیم جو

نظرات (۱)

سیدمهدی موسویان

چشمک زن هشتایی با ATmega8

همون طور که قبل تر گفته بودم به عنوان اولین پروژه یک چشمک زن هشتایی می سازیم.

کد برنامه

/*
 * 8-LED-flasher.c
 *
 * Created: 08/11/1399 10:24:35 ب.ظ
 * Author : bsimjoo
 */
#define F_CPU 1000000

#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
    DDRD=0xff;
    PORTD=0xff;
    while (1)
    {
        for(uint8_t i=1;1;i*=2){
            _delay_ms(300);
            PORTD=i;
            if(i>=128) break;
        }
    }
}

تفسیر کد...

ادامه مطلب...
مجوز مطالب و محتوا ۱۵ بهمن ۹۹ ، ۱۳:۲۸ ۰ نظر موافقین ۴ مخالفین ۰
بهنام سیم جو

گیت هاب ایران را از تحریم خارج کرد

پیش تر گیت هاب اعلام کرده بود که به تازگی صحبت هایی کرده و می خواد به ایران سرویس کامل بده و به تازگی به حرفش عمل کرده (این خبر رو برای تمام اعضای ایرانی هم ایمیل کرده). اگه بخوام بد بین باشم باید بگم که زیاد روش حساب نکنید! چون شاید بخاطر تغییر سیاست آمریکا با توجه به تغییر دولتش باشه و همونطور که قبلا ایران رو تحریم کرده بودن ممکنه دوباره این اتفاق بیوفته و هیچ ضمانتی براش نیست!

مجوز مطالب و محتوا ۱۲ بهمن ۹۹ ، ۲۲:۵۰ ۱ نظر موافقین ۲ مخالفین ۰
بهنام سیم جو

نظرات (۱)

محمدصالح کامیاب

شروع برنامه نویسی AVR

تو برنامه نویسی AVR ساختن یه فلاشر هشتایی عین Hello world میمونه و اکثر tutorial ها اولین پروژه شون همینه! منم در آینده نزدیک از همین پروژه شروع می کنم ولی برای شروع باید چنتا نرم افزار رو نصب و راه اندازی کرد. با ما همراه باشید که کلی کار داریم!

ادامه مطلب...
مجوز مطالب و محتوا ۰۸ بهمن ۹۹ ، ۱۵:۵۴ ۰ نظر موافقین ۳ مخالفین ۰
بهنام سیم جو

شروع کار با AVR

مقدمه

همونطور که پیش تر در پستی با گذاشتن مطالبی در حوضه میکروکنترلر AVR موافقت شد با این پست مطالب با این موضوع را شروع می کنم.

همون طور که قبلا هم نقل قول کردم میکروکنترلر ها در واقع دسته ای از تراشه های IC هستند که امکان برنامه نویسی و کنترل مدارات الکتریکی رو به ما می دهند. این تراشه ها درواقع چیزی شبیه به یک رایانه در ابعاد بسیار کوچک هستند که درون خود دارای بخش هایی مانند CPU, RAM, ROM و چند نوع حافظه هستند. این تراشه های از خانواده های مخلف و با معماری ها و ویژگی ها مختلفی هستند که به جرئت میشه گفته خانواده AVR بهترین و پرکاربرد ترین خانواده این دسته از تراشه ها هستند. در ادامه کمی بیشتر در مورد AVR ها آشنا خواهیم شد.

ادامه مطلب...
مجوز مطالب و محتوا ۰۳ بهمن ۹۹ ، ۱۳:۲۶ ۲ نظر موافقین ۲ مخالفین ۰
بهنام سیم جو

هنگام استفاده از VPN مراقب باشد

VPN چیست؟

Virtual Private Network پدیده ای نسبتا پیچیده در شبکه هست و می تونید با سرچ تو گوگل بیشتر در موردش بدونید ولی مردم اکثرا اون رو فقط به عنوان یک ابزار برای رفع محدودیت شبکه می شناسن. در واقع VPN ها کاربرد ها و پیچیدگی های خیلی بیشتری نسبت به رفع محدودیت داره.

ادامه مطلب...
مجوز مطالب و محتوا ۲۴ دی ۹۹ ، ۲۱:۰۴ ۰ نظر موافقین ۲ مخالفین ۰
بهنام سیم جو

کامن لیسپ: یک زبان با تعیین نوع پویا یا ایستا؟

داستان از جایی شروع شد که در مقاله چطور کاری کنیم لیسپ سریع‌تر از سی اجرا شود؟ خواندم که کامن لیسپ بنا به خواست برنامه‌نویس می‌تواند «زبانی با تعیین نوع پویا(dynamic) ویا ایستا(static) باشد» که کنجکاوی بنده برانگیخته شد(بخوانید فضولی‌ام گل کرد!) و در کانال #clschool روی شبکه‌ی آی‌آر‌سی فری‌نود پرسیدم که در ادامه نتیجه بحث خدمتتون عرض خواهد شد.

ادامه مطلب...
مجوز مطالب و محتوا ۱۴ دی ۹۹ ، ۲۳:۳۴ ۰ نظر موافقین ۱ مخالفین ۰
فاروق کریمی زاده