<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های Amyr</title>
        <link>https://virgool.io/feed/@q_Amyr_p</link>
        <description>یه برنامه نویس پایتون :) آدرس اینستاگرام+گیتهاب و... ----&gt; https://q-amyr-p.github.io</description>
        <language>fa</language>
        <pubDate>2026-06-07 03:31:04</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/276450/avatar/enD776.png?height=120&amp;width=120</url>
            <title>Amyr</title>
            <link>https://virgool.io/@q_Amyr_p</link>
        </image>

                    <item>
                <title>ساخت مخزن گیت هاب — از صفر تا صد</title>
                <link>https://virgool.io/javacup/%D8%B3%D8%A7%D8%AE%D8%AA-%D9%85%D8%AE%D8%B2%D9%86-%DA%AF%DB%8C%D8%AA-%D9%87%D8%A7%D8%A8-%D8%A7%D8%B2-%D8%B5%D9%81%D8%B1-%D8%AA%D8%A7-%D8%B5%D8%AF-oeeapd9tudfx</link>
                <description>سلام رفقا, حالتون چطوره؟؟ معذرت میخوام بابت اینکه چندروزی پست نزاشتم.اگر یک برنامه‌نویس هستید و می‌خواهید شروع به استفاده از گیت روی گیت‌هاب بکنید، بهترین مقاله را برای مطالعه انتخاب کرده‌اید. شما پس از مطالعه این مقاله و آشنایی با روش ساخت مخزن گیت هاب و همچنین شیوه استفاده از آن قادر خواهید بود یک پروژه گیت‌هاب را ایجاد کرده و روی آن کار کنید.گیت چیست؟گیت یک نرم‌افزار اوپن سورس است که در سال 2005 از سوی لینوس تروالدز ایجاد شده است. این ابزار یک «سیستم کنترل نسخه» (Version Control System) است که در ابتدا برای هماهنگ کار چند توسعه‌دهنده روی کرنل لینوکس ساخته شده بود. سیستم‌های کنترل نسخه زیادی مانند CVS ،SVN ،Mercurial و غیره وجود دارند، اما گیت امروزه به یک نرم‌افزار استاندارد برای کنترل نسخه تبدیل شده است.کنترل نسخه یعنی چه؟اگر به تازگی وارد دنیای برنامه‌نویسی شده‌اید، این واژه‌ها معنای خاصی برای شما نخواهند داشت. با این حال، جای نگرانی نیست، چون با مطالعه این پاراگرف کوتاه خواهید دانست که سیستم کنترل نسخه یا به اختصار VCS دقیقاً به چه معنا است؟کنترل نسخه یک سیستم مدیریتی است و تغییرهایی که روی فایل‌ها یا مجموعه‌ای از فایل‌ها (برای نمونه یک پروژه کدنویسی) ایجاد می‌شوند را ردگیری می‌کند. توسعه‌دهندگان با کمک چنین سیستمی، می‌توانند با یکدیگر همکاری کنند و به صورت مشترک یک پروژه را جلو ببرند.یک سیستم انشعاب از سوی کنترل نسخه اجرا می‌شود که به توسعه‌دهندگان کمک می‌کند تا به صورت انفرادی روی یک وظیفه کار کنند. برای نمونه یک شاخه برای یک وظیفه یا یک شاخه برای یک توسعه‌دهنده. در ادامه همه تغییرهای ایجاد شده از سوی تیم در شاخه اصلی ترکیب می‌شوند.همه تغییرهای ایجاد شده از سوی توسعه‌دهندگان ردگیری و در «سابقه» (history) ذخیره می‌شوند. ردگیری این تغییرهای ایجاد شده از سوی هر یک از اعضای تیم می‌تواند سودمند باشد.برای نمایش تصویر در ابعاد بزرگ‌تر روی آن کلیک کنید.ریپازیتوری‌ها یا مخازن گیت را کجا می‌توان یافت؟اگر می‌خواهید شروع به استفاده از گیت بکنید، باید بدانید که کجا می‌توانید ریپازیتوری‌های خود را میزبانی کنید. پلتفرم‌های میزبانی زیادی وجود دارند که می‌توانید کد خود را به طور رایگان روی آن‌ها میزبانی کنید. برخی گزینه‌ها رایگان نیستند، اما شما به جز در موارد خاص، به اغلب آن‌ها نیازی نخواهید داشت.در ادامه سه مورد از محبوب‌ترین سرویس‌های میزبانی گیت را ملاحظه می‌کنید:گیت‌هاب : در سال 2008 راه‌اندازی شده و اخیراً از سوی مایکروسافت خریداری شده است. در پاییز 1397 حدود 31 میلیون کاربر داشته است.گیت‌لب : در سال 2011 راه‌اندازی شده و تحت مالکیت شرکت GitLab است.بیت‌باکت : در ژوئن 2008 راه‌اندازی شده است و تحت مالکیت شرکت نرم‌افزاری Atlassian قرار دارد.نکته: پلتفرم‌های میزبانی به دو روش در دسترس هستند که یکی روش کلود (میزبانی آنلاین) و دیگری میزبانی مستقل روی سرور شخصی (میزبانی خصوصی) است.به عنوان توسعه‌دهنده چرا باید از گیت استفاده کنیم؟گیت ابزاری غیر قابل چشم‌پوشی برای توسعه‌دهندگان محسوب می‌شود. در ادامه فهرستی از مزیت‌های این ابزار را مشاهده می‌کنید:دیگر نیازی به کپی کردن وجود ندارد، زمانی که کار خود را روی یک به‌روزرسانی برای اپلیکیشن یا اصلاح باگ تمام می‌کنید، کافی است پروژه خود را به صورت آنلاین push کنید تا ذخیره شود.امکان حذف و بازگشت به مراحل قبلی کدنویسی وجود دارد. به این منظور کافی است یک دستور را وارد کنید تا به نسخه قبلی پروژه بروید و کار خود را از آنجا دنبال کنید.امکان کار با دوستان به سهولت میسر شده است و هر بار که تغییری ایجاد می‌کنید، نیازی به ارسال فایل‌های فشرده پروژه از طریق ایمیل وجود ندارد.می‌توانید آن چه را انجام داده‌اید به سادگی ببینید. با استفاده از یک دستور ساده می‌توانید تغییرهایی را که از آخرین بار روی پروژه ذخیره شده اجرا کرده‌اید مشاهده کند.بدین ترتیب با مزیت‌های عمده گیت آشنا شدید. این ابزار می‌تواند جایگاه بسیار برجسته‌ای بیابد. به عنوان نمونه می‌توانید سرویس‌ها را طوری پیکربندی کنید تا با گیت کار کنند و به صورت خودکار کد خود را توزیع و تست کنید.تمرین عملی کار با گیت و گیت‌هاباکنون که می‌دانید گیت و گیت‌هاب چه هستند، زمان آن رسیده است که با تمرین‌های منسجمی کار با آن‌ها را بیاموزید. پس از اجرای این تمرین‌ها قادر خواهید بود پروژه‌های خود را از طریق گیت‌هاب ساخته و مدیریت کنید و از قابلیت‌های مقدماتی آن بهره بگیرید.نکته: ما به این دلیل گیت‌هاب را به عنوان سرویس میزبانی خود انتخاب کرده‌ایم که بیشترین استفاده را در دنیا دارد. البته جای نگرانی نیست چون سرویس‌های دیگر نیز رویه مشابهی دارند.به خاطر داشته باشید که باید همه دستورهای مقدماتی Shell را بدانید، چون در غیر این صورت بخش‌هایی از این مقاله برای شما سردرگم‌کننده خواهند بود.گام اول: شروعنخستین تمرین زیاد پیچیده نیست و به دو بخش تقسیم می‌شود. نصب گیت و ایجاد حساب گیت‌هابایجاد حساب گیت‌هاببرای ایجاد حساب گیت‌هاب باید به صفحه اصلی وب‌سایت گیت‌هاب (+) بروید و فرم ثبت نام را پر کنید.این تنها کار لازم است و شما اینک رسماً یکی از اعضای گیت‌هاب هستید.نصب گیتاکنون باید ابزارهای گیت را روی رایانه خود نصب کنیم. نرم‌افزارهای گیت مختلفی وجود دارند؛ اما بهتر است کار خود را ابزارهای مقدماتی شروع کنیم. ما از خط فرمان برای ارتباط با گیت‌هاب استفاده می‌کنیم. زمانی که با خط فرمان احساس راحتی بیشتری کردید، می‌توانید نرم‌افزار گیت را به همراه یک اینترفیس کاربری دانلود کنید.اوبونتوابتدا پکیج‌های خود را به‌روزرسانی کنید:sudo apt updateسپس گیت را با دستور apt-get نصب کنید:sudo apt-get install gitدر نهایت بررسی کنید که گیت به درستی نصب شده است یا نه:git --versionMacOSXابتدا آخرین نسخه گیت را برای مک (+) دانلود کنید. سپس دستورالعمل‌هایی را که روی صفحه نمایش می‌یابد پیگیری کنید. در نهایت یک ترمینال باز کنید و تأیید کنید که گیت به طرز صحیحی نصب شده است:git --versionویندوزابتدا نسخه نصبی گیت را از این لینک (+) برای ویندوز دانلود کنید. سپس با پیگیری دستورالعمل‌های نمایش یافته روی صفحه آن را نصب کنید. در نهایت یک ترمینال برای مثال پاورشل یا git bash را باز کرده و بررسی کنید که گیت به درستی نصب شده باشد:git --versionبرای همه کاربرانآخرین گامی که برای نصب صحیح لازم است این است که ترمینال را با دستورهای زیر اجرا و اطلاعات خود را وارد کنید تا یک نام کاربری و ایمیل پیش‌فرض در زمان ذخیره‌سازی کارهای خود داشته باشید:git config --global user.name &amp;quotGaël Thomas&amp;quot
$ git config --global user.email example@mail.comگام دوم: نخستین پروژه گیت‌هاباکنون که آماده هستید، می‌توانید به صفحه اصلی گیت‌هاب بازگردید و روی آیکون بعلاوه (+) در نوار منو کلیک کنید. زمانی که روی این دکمه کلیک کنید، یک منوی جدید با مدخل «New repository» ظاهر می‌شود. روی آن کلیک کنید.در این مرحله صفحه ایجاد ریپازیتوری ظاهر خواهد شد. یک نام مناسب برای نخستین ریپازیتوری خود انتخاب کنید و پیش از کلیک کردن روی دکمه Create repository یک توضیح کوتاه برای آن وارد کنید.نکته: بر اساس این چارچوب این راهنما فعلاً نیازی به ساخت فایل Read Me نداریم و آن را در ادامه ایجاد خواهیم کرد. بنابراین در حال حاضر می‌توانید گزینه Initialize this repository with a README را انتخاب نشده باقی بگذارید.بدین ترتیب ما موفق شدیم نخستین ریپازیتوری گیت‌هاب خود را ایجاد کنیم. اگر می‌خواهید همه ریپازیتوری‌های خود را ببینید، باید روی تصویر پروفایل در نوار منو کلیک کنید و سپس گزینه Your repositories را انتخاب کنید.گام سوم: جلد یا کاور مناسباینک زمان آن رسیده است که نخستین تغییرهای خود را در ریپازیتوری ایجاد کنیم. شاید بهترین تغییر در این مرحله، ایجاد یک کاور مناسب برای آن است که شامل نوعی متن خوشامدگویی باشد.یک نسخه محلی از پروژهنخستین مأموریت ما این است که یک کپی از ریپازیتوری ایجاد شده روی رایانه خود داشته باشیم. به این منظور باید ریپازیتوری را کلون کنیم. در صفحه ریپازیتوری آدرس HTTPS را دریافت کنید.برای مشاهده تصویر در ابعاد اصلی روی آن کلیک کنید.زمانی که آدرس ریپازیتوری را به دست آوردید، باید از ترمینال (از طریق دستورهای shell) برای جابجایی به مکانی که می‌خواهید کپی دایرکتوری را قرار دهید استفاده کنید. برای مثال می‌توانید آن را به پوشه Documents انتقال دهید. زمانی که آماده بودید، دستور زیر را وارد کنید:git clone [HTTPS ADDRESS]این دستور یک کپی محلی از ریپازیتوری موجود در آدرس فوق ایجاد می‌کند.اکنون این ریپازیتوری روی سیستم شما قرار دارد و باید با دستور زیر به مکان آن جابجا شوید:cd [NAME OF REPOSITORY]نکته: زمانی که یک ریپازیتوری را کلون می‌کنید، گیت یک ریپازیتوری روی رایانه شما ایجاد می‌کند. اگر دوست داشته باشید، می‌توانید با رابط کاربری رایانه نیز به پروژه خود دسترسی داشته باشید.ویرایش ریپازیتوریاکنون می‌توانید از طریق ترمینال یا رابط کاربری رایانه خود فایلی به نام «README.md» در پوشه پروژه ایجاد کنید. ما قصد نداریم در خصوص جزییات این مرحله به شما توضیح دهیم، چون موضوع خاصی وجود ندارد. کافی است پوشه را باز کنید و چنان که به طور معمول عمل می‌کنید، یک فایل در آن ایجاد کنید.اگر می‌خواهید این کار را به روشی جالب انجام دهید، قالب ارائه شده در ادامه را در فایل README.md کپی کنید و اطلاعات را جایگزین نمایید تا یک خروجی شخصی‌سازی‌شده داشته باشید.### My first repository is awesome!
I&#039;m [PSEUDO/NAME] and here it&#039;s my first GitHub repository.
If you see this file on my project, it&#039;s because I&#039;m learning Git.
My mood:
&gt; [MOOD NAME]
My favorite color:
&gt; [COLOR NAME]
Thank you so much for reading! ☺به اشتراک گذاردن پروژهاینک که پروژه را اصلاح‌کرده‌اید باید آن را ذخیره کنید. این فرایند «کامیت» (Commit) کردن نام دارد. به این منظور باید به ترمینال بازگردید. اگر ترمینال را بسته‌اید باید به نشانی پوشه مراجعه کنید.زمانی که می‌خواهید کارهای خود را ذخیره کنید، به چهار مرحله نیاز دارید. این مراحل به ترتیب status ،add ،commit و push نامیده می‌شوند. ما یک رویه استاندارد برای شما آماده کرده‌ایم تا هر بار که می‌خواهید کارهایتان را ذخیره کنید مورد استفاده قرار دهید.نکته: همه مراحل زیر باید درون پروژه اجرا شوند.statusنخستین کاری که در زمان ذخیره‌سازی کارهای خود باید انجام دهید، بررسی فایل‌هایی است که تغییر داده‌اید. به این منظور می‌توانید دستور زیر را وارد کید تا فهرستی از تغییرها ظاهر شود:git statusaddبه کمک فهرست تغییرها می‌توانید همه فایل‌هایی را که می‌خواهید با دستور زیر آپلود کنید:git add [FILENAME] [FILENAME] [...]در این مورد قصد داریم فایل README.md را اضافه کنیم، زیرا مقصود ما ذخیره‌سازی این فایل است.git add README.mdنکته: اگر در این مرحله دوباره دستور git status را اجرا کنید، می‌بینید که این بار فایل RADME.md به رنگ سبز ظاهر می‌شود. این بدان معنی است که ما فایل را به درستی اضافه کرده‌ایم.commitاکنون که فایل‌های منتخب خود را اضافه کرده‌ایم، باید یک پیام بنویسیم و در آن کاری که انجام یافته را توضیح دهیم. این پیام بعدها در صورتی که بخواهیم سابقه تغییرها را بررسی کنیم مفید خواهد بود. مثالی از پیامی که می‌توان نوشت به صورت زیر است:git commit -m &amp;quotAdded README.md with good description in it.&amp;quotpushبدین ترتیب به مرحله پایانی رسیده‌ایم، اینک می‌توانیم کار خود را به صورت آنلاین منتشر کنیم. اگر دستور زیر را وارد کنید، همه تغییرهایی که اجرا کرده‌اید آنلاین می‌شوند و مستقیماً روی صفحه ریپازیتوری قابل مشاهده خواهند بود:git push origin masterبدین ترتیب کار به پایان رسیده است. اگر به صفحه ریپازیتوری روی وب‌سایت گیت‌هاب بروید می‌توانید فایل README.md را با پیش‌نمایش زیبایی مشاهده کنید.دستورهای مفید برای گیتشما به عنوان یک مبتدی در زمینه گیت باید با برخی دستورهای ضروری دیگر آن آشنا شوید. در ادامه فهرستی از دستورهایی را که در زمان کار روی پروژه مفید خواهند بود مشاهده می‌کنید.نمایش سابقه کامیت‌ها: با استفاده از دستور زیر می‌توانید همه تغییرهایی را که روی پروژه اجرا شده است ملاحظه کنید:git logبازگردانی تغییرها: با استفاده از دستور زیر می‌توانید تغییرهایی را که از زمان آخرین کامیت انجام یافته‌اند، به حالت قبل بازگردانید.git checkout.بازگردانی تغییرات یک فایل: اگر می‌خواهید همه تغییرات یک فایل خاص را از زمان آخرین کامیت بازگردانید، می‌توانید از دستور زیر استفاده کنید:git checkout [FILENAME]نمایش تغییرات فایل: برای نمایش تغییرهای یک فایل خاص از زمان آخرین کامیت از دستور زیر می‌توان بهره گرفت:git diff [FILENAME]حذف فایل‌های ناخواسته: برای حذف فایل‌های ناخواسته (یعنی فایل‌هایی که کامیت نشده‌اند) از پروژه می‌توان از دستور زیر استفاده کرد:git clean –dfxافزودن همه فایل‌ها: برای اضافه کردن همه فایل‌ها و کامیت کردن آن‌ها به صورت یک‌باره دستور زیر را اجرا کنید:git commit -am [MESSAGE]منبعکامنت, لایک و فالو یادتون نره هاااا</description>
                <category>Amyr</category>
                <author>Amyr</author>
                <pubDate>Sun, 18 Oct 2020 12:10:20 +0330</pubDate>
            </item>
                    <item>
                <title>گــیــتــهــاب تو قشنگ کن?</title>
                <link>https://virgool.io/@q_Amyr_p/%DA%AF%D9%80%D9%80%DB%8C%D9%80%D9%80%D8%AA%D9%80%D9%80%D9%87%D9%80%D9%80%D8%A7%D8%A8-%D8%AA%D9%88-%D9%82%D8%B4%D9%86%DA%AF-%DA%A9%D9%86-xpbda0wwxkdx</link>
                <description>سلام رفقا, حالتون چطوره؟؟امروز میخوام بهتون روشی رو بگم که باهاش بتونید صفحه پروفایل گیتهاب تون رو به نوعی قشنگ تر کنیدخب بریم سر اصل مطلب قبلش یه نمونه براتون این زیر گذاشتم تا متوجه کارمون بشید?تصویری از کاری که میخواهیم انجام بدیمحالا بریم سر اصل مطلب??اولین کاری که انجام باید بدید اینه که یک مخزن به اسم خودتون (UserName) ایجاد کنید.حالا باید یه فایل README.md ایجاد کنید, و بعد به بخش ادیت برید و هرچی که دوست دارید که تو صفحه پروفایل شما دیده شه رو بنویسید, اگه هم علاقه ایی به این کار نداشتید میتونید از کدهایی که میزارم استفاده کنید.&lt;a href=&amp;quothttps://github.com/q-Amyr-p&amp;quot&gt;
  &lt;img align=&amp;quotcenter&amp;quot src=&amp;quothttps://github-readme-stats.vercel.app/api?username=q-Amyr-p&amp;show_icons=true&amp;count_private=true&amp;include_all_commits=true&amp;quot /&gt;
&lt;/a&gt;این کد یک گیف از تعداد کامیت ها, ستاره ها و و و میسازه و نمایش میده. فقط کافیه که جای یوزر نیم من از یوزر نیم خودتون استفاده کنید, برای اینکار هرجا که q-Amyr-p دیدید رو پاک کنید و یوزر نیم خودتون رو جایگذاری کنید.&lt;a href=&amp;quothttps://github.com/q-Amyr-p&amp;quot&gt;
 &lt;img align=&amp;quotcenter&amp;quot src=&amp;quothttps://github-readme-stats.vercel.app/api/top-langs/?username=q-Amyr-p&amp;quot /&gt;
&lt;/a&gt;خب این کد هم یک تصویر از بیشترین زبانی که استفاده کردید(&quot; درون گیتهاب &quot;) رو نمایش میده, باز هم مثل قبل هرجا که q-Amyr-p دیدید رو پاک کنید و یوزر نیم خودتون رو جایگذاری کنید تا بر روی حساب شما تنظیم بشه.و تمام به همین راحتی و سادگی نمونه شو خواستید از نزدیک ببینید اینجا کلیک کنید.اگه باز هم دوست دارید که مطالب, آموزش درمورد گیت, گیتهاب و... بزارم حتما دنبال و لایک کنید.سوالی هم داشتید کامنت کنید جواب میدم.فعلا ?</description>
                <category>Amyr</category>
                <author>Amyr</author>
                <pubDate>Tue, 13 Oct 2020 15:14:02 +0330</pubDate>
            </item>
                    <item>
                <title>همه چیز درباره &quot; کـپــی لـفـت &quot;</title>
                <link>https://virgool.io/@q_Amyr_p/%D9%87%D9%85%D9%87-%DA%86%DB%8C%D8%B2-%D8%AF%D8%B1%D8%A8%D8%A7%D8%B1%D9%87-%DA%A9%D9%80%D9%BE%D9%80%D9%80%DB%8C-%D9%84%D9%80%D9%81%D9%80%D8%AA-ketyauiuc7m2</link>
                <description>سلام رفقا, حالتون چطوره؟؟چند روز پیش که دنبال انواع لـایـسـنـس میگشتم چشمم به این مقاله خورد (نتیجه‌: این مقاله از خودم نیست)گفتم براتون اینجا قرار بدم تا که شاید به کارتون بیاد و گره ایی از کارتون باز کنه (برای خودم که باز کرد)کپی رایت چیست ؟؟یک مجموعه از قوانین انحصاری است که به وسیلهٌ دولت، برای تنظیم روش یا شیوه یا چگونگی بیان اطلاعات و ایده‌ها، برای مدتی محدود تصویب می‌شود. کپی رایت ممکن است گستره وسیعی از خلاقیت‌ها و کارهای هنری و کارهائی از این نوع را در بر بگیرد؛ این قانون حوزهٌ کارهای ادبی، سینمایی، تولید موسیقی، ضبط صدا، نقاشی، عکاسی و نرم ‌افزار، نمایش‌های زنده، پخش برنامه‌های تلویزیونی و رادیویی، و طراحی‌های صنعتی را شامل می‌شود.حق تکثیر، نوعی مالکیت اندیشه است؛ طراحی‌ها یا طراحی‌های صنعتی ممکن است شکلی مجزا یا یکسان از مالکیت ذهنی در برخی از حوزه‌های قضایی باشند. در بیشتر موارد این حقوق یک دورهٌ زمانی محدود دارند.نماد زیر، نشانه ی این است که محصول مربوطه، تحت حمایت قانون کپی رایت است.کپی لفت چیست ؟؟کپی لفت نوعی بازی با کلمهٔ کپی‌رایت است. (در زبان انگلیسی لفت متضاد رایت است.) کپی‌لفت عملی را توصیف می‌کند که در آن با استفاده از قانون کپی‌رایت، تضمین می‌شود که اجازهٔ نسخه‌برداری و ویرایش یک اثر برای همگان محفوظ می‌ماند، و هیچ شخصی اجازه ندارد حق ویرایش و نسخه‌برداری را از دیگر افراد سلب کند.کپی‌لفت را می‌توان به تمامی آثاری که شامل حق کپی‌رایت می‌شوند، همانند موسیقی، کتاب، نرم‌افزار و ... اعمال کرد. کپی‌رایت به پدیدآورندگان آثار اجازه می‌دهد تا حق نسخه‌برداری، ویرایش، و یا اقتباس کردن از آثارشان را از دیگر افراد سلب کنند. در مقابل، یک پدیدآورندهٔ اثر می‌تواند با استفاده از کپی‌لفت به تمامی افرادی که یک نسخه از اثر را دریافت می‌کنند حق نسخه‌برداری، ویرایش و اقتباس را اعطا کند و با استفاده از قوانین آن تضمین کند که این حق برای دیگر افرادی که نسخه‌ای از این اثر را دریافت می‌کنند همچنان محفوظ خواهد ماند.در حالی که کپی‌رایت این اجازه را به پدیدآورندگان اثر می‌دهد تا حقوق کاربران و مصرف کنندگان را محدود کنند، کپی‌لفت روشی برای اعطای آزادی به کاربران و مصرف کنندگان و تضمین حفظ این آزادی برای کلیهٔ افراد است.تاریخچه :مثالی از کپی‌لفت:زمانی که  ریچارد استالمن بر روی مفسر لیسپ کار می‌کرد. شرکت Symbolics از استالمن خواست تا به آنها اجازه دهد از این مفسر استفاده کنند. استالمن پذیرفت. Symbolics بر روی این مفسر کارکرده و عملکرد آن را بهبود بخشید. اما هنگامی که استالمن از آنان درخواست کرد تا نسخهٔ بهبود یافته را در اختیارش قرار دهند، Symbolics امتناع کرد. پس از آن استالمن شروع به مبارزه و ریشه‌کن کردن این طرز رفتار نمود.از آنجایی که استالمن می‌پنداشت هرگز نمی‌توان قانون فعلی کپی‌رایت و چنین رفتارهای نادرستی را از بین برد،  تصمیم گرفت راهی قانونی برای این کار بیابد. استالمن اجازه‌نامهٔ جامع و عمومی ایمکس را پدید آورد که اولین اجازه‌نامهٔ کپی‌لفت بود. بعدها این اجازه‌نامه به اجازه‌نامهٔ جامع و عمومی گنو (GPL) تبدیل شد که محبوب‌ترین اجازه‌نامه در دنیای نرم‌افزار آزاد است.استفاده از کپی‌لفت :کپی‌لفت یک مفهوم عام است، و نمی‌توان آن را مستقیما به کار گرفت. در عوض پیاده‌سازی‌های مختلفی از این قانون در قالب اجازه‌نامه‌های مختلف پدیدآمده‌اند. تعدادی از این اجازه‌نامه‌ها که توسط بنیاد نرم‌افزارهای آزاد منتشر شده‌اند، شامل این موارد است:GPL : اجازه‌نامهٔ جامع و عمومی گنو : این اجازه‌نامه به منظور اعمال کپی‌لفت به نرم‌افزارها و متن آنها پدیدآمده است و تضمین می‌کند کاربران تمام آزادی‌هایی که در تعریف نرم‌افزار آزاد آمده است را داشته باشند و هیچ شخصی نتواند این آزادی‌ها را از آنان بگیرد.LGPL : اجازه‌نامهٔ کوچکتر جامع و عمومی گنو: این اجازه‌نامه برای اعمال به کتابخانه‌های نرم‌افزاری پدید آمده است و به کاربران اجازه می‌دهد کتابخانه‌هایی که تحت قوانین این اجازه‌نامه انتشار یافته‌اند را با نرم‌افزارهای اختصاصی ترکیب کنند.FDL : اجازه‌نامهٔ مستندات آزاد گنو : نرم‌افزار آزاد باید دارای مستندات آزاد نیز باشد. این اجازه‌نامه به کاربران اجازه می‌دهد تا مستندات را ویرایش کرده و مجددا توزیع کنند. و در عین حال تضمین می‌کند آزادیِ ویرایش و توزیع مجدد آن برای دیگران نیز محفوظ بماند.کلیهٔ این اجازه‌نامه‌ها به گونه‌ای طراحی شده‌اند که شما بتوانید به سادگی آنها را در مورد آثار خود به کار ببندید، با این فرض که شما دارندهٔ حق کپی‌رایت هستید. برای این‌کار، لزومی به ویرایش اجازه‌نامه نیست. تنها باید یک کپی از آن را به اثر خود اضافه کرده و اعلانی را به کدها بیافزایید که به اجازه‌نامه اشاره کند.گنو LGPL :پروانهُ GNU LGPL یا پروانهُ کمتر عمومی همگانی گنو، یکی از پروانه‌های نرم‌افزارهای آزاد است که بنیاد نرم‌افزارهای آزاد آن را منتشر کرده است. این پروانه نوشته شده تا سازشی بین پروانه سرسخت در کپی‌لفتِ GPL و پروانه‌های آسان‌گیری چون پروانه BSD و MIT ایجاد کند.LGPL پروانه‌ای با کپی‌لفت ضعیف است. بدین‌معنا که محدودیت کپی‌لفت را روی خود نرم‌افزار می‌گذارد، ولی نرم‌افزارهای دیگری که تنها به آن پیوند دارند مشمول این محدودیت نمی‌شوند. هرچند که محدودیت‌های دیگری روی این نرم‌افزارها باقی خواهد ماند. (در حالی در مجوزی مثل GPL اجازهٔ پیوندزدن به پروژه‌هایی که از مجوزهای ضعیف‌تری استفاده می‌کنند داده نشده.)LGPL بیشتر برای کتابخانه‌های نرم‌افزاری به کار می‌رود، ولی برخی از نرم‌افزارهای مستقل نیز این مجوز را به کار می‌برند، که معروف‌ترین‌شان موزیلا فایرفاکس و اپن آفیس هستند.مهمترین تفاوت GPL و LGPL این است که دومی می‌تواند به یک برنامه غیر    (L)GPL که می‌تواند یک نرم‌افزار آزاد یا غیر آزاد باشد لینک شود (و در مورد کتابخانه‌ها &#x27;استفاده شود&#x27;). بعد از آن این برنامه‌ی غیر (L)GPL  اگر یک کار مشتق شده نباشد می‌تواند تحت هر شرط انتخابی توزیع شود. ولی اگر یک کار مشتق شده بود آن شرایط باید &quot;اجازه هرگونه تغییر طبق نیاز مشتری و مهندسی معکوس جهت رفع اشکال این تغییرات&quot; را بدهد، خواه آن کاری که از برنامه‌ی LGPL استفاده می‌کند یک کار مشتق شده باشد یا مشکل حقوقی نداشته باشد.یک خصلت LGPL این است که هر کس می‌تواند هر بخش LGPL شده نرم‌افزار را به یک بخش GPL شده از نرم‌افزار تبدیل کند.GNU GPL (پروانهٔ عمومی همگانی گنو):  سرواژهٔ (GNU General Public License) رایج‌ترین مجوز نرم‌افزارهای آزاد است، که به ادعای وب‌گاه گنو مورد استفادهٔ بیش از نیمی از نرم‌افزارهای آزاد قرار گرفته است.از معروف‌ترین سیستم‌عامل‌ها و نرم‌افزارهای تحت مجوز گنو می‌توان سیستم‌عامل‌های گنو/لینوکس و بسته‌های نرم‌افزاری گنو اشاره کرد.پروانهMIT یک پروانهٔ آزاد برای نرم‌افزار از دانشگاه MIT می‌باشد. این مجوز آسان‌گیر بوده و مهمترین ویژگی آن این است که اجازه می‌دهد یک نرم‌افزار دارای مجوز MIT، مجدداً در یک نرم‌افزار اختصاصی با مجوز غیر MIT استفاده شود. این مجوز همچنین سازگار با مجوز GPL می‌باشد بدین معنی که GPL اجازه ترکیب و توسعه نرم‌افزارهای تولید شده با این مجوز را می‌دهد.آپاچی :پروانهٔ آپاچی (Apache License) : یکی از پروانه‌های نرم‌افزار آزاد است که به صورت کپی آزاد توسط بنیاد نرم‌افزار آپاچی منتشر می‌شود. این اجازه‌نامه به کمک قوانین کپی رایت و تکذیب نامه تعریف شده‌است.همه نرم‌افزارهای تولید شده توسط بنیاد آپاچی، یا هر پروژه و زیر پروژهٔ مورد حمایت این بنیاد، تحت اجازه‌نامه آپاچی قرار دارد. بعضی از نرم‌افزارهای دیگرِ غیر مرتبط با بنیاد آپاچی نیز از این اجازه‌نامه استفاده می‌نمایند. از آبان ۱۳۸۹ بیش از ۶۰۰۰ پروژه در سورس‌فورج براساس این اجازه‌نامه موجود و در دسترس بودند.نگارش ۱.۰ اجازه‌نامه آپاچی ابتدا تنها برای بسته‌ی قدیمی کارساز آپاچی ( از نگارش ۱.۲) مورد استفاده بود. نگارش ۱.۱ اجازه‌نامه آپاچی در سال ۲۰۰۰ توسط بنیاد آپاچی اعلان شد. تغییرات مقدماتی از نگارش ۱.۰ اجازه‌نامه عبارت است از:&#x27;عبارت تبلیغاتی&#x27; (بخش ۳ از نگارش ۱.۰ اجازه‌نامه)؛ ذکر اجازه‌نامه برای محصولات مشتق‌شده در تبلیغاتشان ضروری نیست اما باید در مستنداتش ذکر شود.بنیاد آپاچی اجازه‌نامه آپاچی ۲.۰ را در ژانویه ۲۰۰۴  منتشر نمود. اهداف اعلام شده برای این اجازه‌نامه ساده‌سازی استفاده از این اجازه‌نامه برای پروژه‌های خارج از این بنیاد، نیز بهبود انطباق با نرم‌افزارهای حول محور GPL، امکان ذکر اجازه‌نامه به جای نام بردن از تمام فایل‌ها و در نهایت نیازمند یک اجازه‌نامه ثبت اختراع برای مشارکت‌هایی که مشارکت کننده از ثبت‌اختراع خود تحدی می‌نماید.شرایط اجازه‌نامهمانند تمام تا تحت این اجازه‌نامه هر تغییری که مایلند را در برنامه ایجاد نموده، آن را باز توزیع نمایند، برای هر هدفی استفاده کنند.اجازه‌نامه‌ی آپاچی، مانند بیشتر اجازه‌نامه‌های دیگر، این اجازه را می‌دهد تا نرم‌افزارهای مشتق شده بتوانند بدون ذکر این اجازه‌نامه یا تحت آن باز-تولید و با انتشار یابند(بر خلاف کپی لفت). در هر پرونده‌ی اجازه‌نامه باید در صورت وجود هرگونه موضوع مشمول کپی رایت، ثبت تجاری، یا موضوعات قانونی مشمول در کدها، ذکر شده باشد(به جز موارد محق دانستن در کارهای مشتق شده). با هرگونه تغییر در پرونده باید اعلانی صورت گیرد و تغییرات صورت گرفته را اعلام نماید.اجازه‌نامه‌های نرم‌افزار آزاد، این اجازه‌نامه به کاربران نرم‌افزار آزادی عملی را برای کاربران نرم‌افزار ایجاد می‌نماید.منبع : بلاگ لینوکس</description>
                <category>Amyr</category>
                <author>Amyr</author>
                <pubDate>Sun, 11 Oct 2020 09:47:00 +0330</pubDate>
            </item>
                    <item>
                <title>? علاقه هام ? (ویرایش شد)</title>
                <link>https://virgool.io/@q_Amyr_p/%D8%B9%D9%84%D8%A7%D9%82%D9%87-%D9%87%D8%A7%D9%85-ckfqqcxuenlu</link>
                <description>سـلـام رفـقـا, حـالـتـون چـطـوره؟؟امروز میخوام به چیز هایی که علاقه دارم رو به اشتراک بزارم :)خب اهنگ مورد علاقه مو بگم یا شرکت مورد علاقه مو؟؟ بزارید همشو بگم ??اهنگ :هرچی پلی شد? (شوخی کردم) هرچی اهنگ شاد و ریتم دار باشهفیلم :شکست ناپذیر (بویکا)درس ها :ریاضی(فقط واسه دبیرمون) - کار و فناوری(برای کارهای عملیش)  - زبان خارجه(برای آینده)ورزش :فوتبال - والیبالسیستم عامل :لینوکس ( ترجیحا مینت ( چون فقط مینت به سیستمم میخوره? ) )الگوم :بویکا - جادیزبان برنامه نویسی :(خب معلومه پایتون?) - جاوا (یکمی کار کردم)گیم :جی تی ای سان اندریاس - سوپر ماریو (همون قارچ خور خودمون) - پی اس 2017 (فقط تا 17 به سیستمم میخوره?)چقد علاقه مون شبیه به هم عه ??کامنت یادتون نررررههه ها</description>
                <category>Amyr</category>
                <author>Amyr</author>
                <pubDate>Sat, 10 Oct 2020 23:25:58 +0330</pubDate>
            </item>
                    <item>
                <title>برنامه QR-Code</title>
                <link>https://virgool.io/@q_Amyr_p/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-qr-code-xqvhquvdnc5e</link>
                <description>پیشنمایش برنامهسلام رفقا, حالتون چطوره؟؟امروز میخوام کدهای برنامه QR-Code رو با هم به قول معروف آنالیز کنیمخب بریم سراغ کد ها (برنامه رو میتونید از گیتهاب بنده دریافت کنید)import pyqrcode
from pyqrcode import QRCodeاین کد همونطور که میدونید کتابخونه pyqrcode رو فراخونی میکنه و از توش QRCode رو میکشه بیرون :|text = input(&#039;Enter the text: &#039;)این یکی کد یه مقداری رو از کاربر میگیره (همون متن) و میرزه درون text هرچی که کاربر وارد کرده روurl = pyqrcode.create(text)(حالا دیگه پای کیوآرکد وارد عمل میشه XD) این کد با استفاده از pyqrcode شروع به ساختن QRCode میکنه و اون رو میریزه درون urlurl.png(&amp;quotQRCode.png&amp;quot, scale = 8)(حالا وقتشه QRCode ایی که بدست اومده رو به صورت عکس سیو کنیم) این کد هرچی که درون url ریخته شده رو تبدیل به عکس میکنه و بعدش هم سیو میکنهو تمامبزودی ورژن های دیگه ایی از برنامه رو منتشر میکنم و قابلیت های بیشترسی بهش می افزونم :|حتما گیتــهـاب من رو فالو کنید(این کارتون بهم انرژی میده)کامنت بزارید جواب میدم :)</description>
                <category>Amyr</category>
                <author>Amyr</author>
                <pubDate>Fri, 09 Oct 2020 16:17:16 +0330</pubDate>
            </item>
                    <item>
                <title>1. معرفی نامه :/</title>
                <link>https://virgool.io/@q_Amyr_p/1-%D9%85%D8%B9%D8%B1%D9%81%DB%8C-%D9%86%D8%A7%D9%85%D9%87-yv5xee7lyqfi</link>
                <description>سلام دوستان, حالتون چطوره تو این روزای کرونایی...این اولین پست من در ویرگول هست و قراره کلی پست آموزشی تفریحی و و و بزارم براتون :)گفتم همین اول کار خودم رو بهتون معرفی کنم تا بیشر با همم آشنا بشیم...خب شروع کنیم : بنده اسمم امیرمهدی هست که امیر صدام میکنم (شما هم امیر صدام کن) لقبم Amyr هستش همون امیر هست با این تفاوت که بجای i از y استفاده کردم ( همینجوری بی دلیل :/ )اووووم. 15 سالمه و امسال تعیین رشته دارم که به امیدخدا میخوام برم رشته کامپیوتر از شاخه فنی حرفه اییبرنامه نویسی رو دوست دارم و زبان پایتون رو انتخاب کردم برای یادگیری. هنوز پروژه جدی ایی نگرفتم ولی به زودی زود شروع میکنم ; )خوشحال میشم گیتهاب و اینستاگرام من رو فالو کنید :)خب فکر نکنم چیز خاصی مونده باشه که نگفته باشم سوالی داشتید بپرسید جواب میدم :)آآآآ راستی به زیلینک من هم سر بزنید لینک گیتهاب, اینستا و... اونجاست D:</description>
                <category>Amyr</category>
                <author>Amyr</author>
                <pubDate>Tue, 06 Oct 2020 21:14:58 +0330</pubDate>
            </item>
            </channel>
</rss>