همونطور که خبر دارید، گیتلب از روی سرورهای Azure به Google Cloud منتقل شد و خب نتیجهی این انتقال برای ما که در ایران زندگی میکنیم، اینه که به خاطر تحریمهای گوگل! ما دیگه به GitLab دسترسی نداریم!
راجع به اصل اینکه چرا تحریم هستیم، چرا نصف سایتایی که تحریم نیستیم رو هم خودمون فیلتر میکنیم و… صحبت نکنم بهتره… ایشالا یه روز درست شه و مثل بقیه مردم جهان ما هم آزادانه از سرویسهایی که میخوایم استفاده کنیم. اما تا اون زمان، دنیا به پایان نرسیده…و ما راه حل داریم، چون که ما تور داریم ?
پیشنیازها
برای استفاده از GitLab از طریق تور، شما نیاز دارید که اول تور نصب باشه، همینطور Privoxy که آموزشش توی بخش مربوط هست. بعد از اون، بر اساس نوع استفادتون از GitLab باید Git یا SSH یا هردو رو تنظیم کنید تا از تور برای GitLab استفاده کنن.
توصیه اینه که هر دو رو تنظیم کنید تا هر مدل url که داشتید از repo های دیگه و خواستید clone کنیدشون هم مشکلی پیش نیاد.
تنظیم SSH
اگر برای دسترسی به مخازنتون در GitLab از SSH استفاده میکنید باید در انتهای فایل ~/.ssh/config این اطلاعات رو اضافه کنید. در ضمن نیاز هست تا روی سیستمتون nc داشته باشید، البته این دستور با gnu-netcat کار نمیکنه و openbsd-netcat رو باید نصب کنید. (اگر معادل این دستور برای gnu-netcat رو هم کسی میدونه بگه تا اضافه کنم، گویا سوئیچهای اینها با هم فرق دارن و gnu-netcat اصلا سوئیچ -X نداره!)
Host gitlab.com ProxyCommand nc -X connect -x localhost:8118 %h %p
تنظیم Git
اگر برای دسترسی به مخازنتون در از https استفاده میکنید، باید در انتهای فایل ~/.gitconfig این اطلاعات رو اضافه کنید
[http "https://gitlab.com"] proxy = http://localhost:8118
همونطور که میبینید این پروکسیها فقط برای GitLab استفاده خواهند شد، در نتیجه اگر تور کند باشه به صورت مقطعی، یا قطع باشه و نیاز به پل داشته باشید برای اینکه دوباره کار کنه، همهی کاراتون لَنگ نمیمونه و بقیه remote ها (گیتهاب و…) درست کار خواهند کرد.
راهاندازی شخصی GitLab
البته از اونجایی که GitLab یک پروژهی متنباز هست، میتونید گیتلب خودتون رو روی سرور خودتون هم راه بندازید که خب پیچیدگیای خودش رو داره قطعا، ولی اگه میخواید از سرویس خود گیتلب استفاده کنید، راههای بالا پیش روتون هست 🙂
خوش و خرّم باشید ?
من این کارو کردم منتها ارور خوردم و نتونست وصل بشه از همون torsocks در اول دستورم استفاده کردم
ارور چیه؟ و اینکه privoxy نصب تنظیم شده روی تور و سرویسش درحال اجراست؟ اگر اون تغییرات رو انجام دادید دیگه نیاز به torsocks نیست ها
رو سرور خودت بخوای راه اندازی کنی خیلی هزینش بالاس =)))) کلی ریسورس میخوره … تازه رانر اینا هم داستانیه واسه خودش ..
من برای حل این مسئله سرور git را در شبکه داخلی شرکت راه اندازی کردم ام
https://goo.gl/9URavR
سلام، اینم راهی هست، ولی خب دردسرهای خودشم داره دیگه، روی گیتلب شما لازم نیست نگران خیلی از مسائل باشی، ضمن اینکه همه امکان اینکه روی سرور خودشون یا توی شرکتشون چنین کاری کنن رو ندارن!
با تشکر از مطلب مفیدتان، این راه حل بخشی از مشکلات را حل نمی کند. ما سایتهایی داریم که روی gitlab pages راه اندازی کرده ایم. برای مثال سایت جدید شیرازلاگ یا سایت شخصی خود من اینطوری راه اندازی شدند. حتی اگر خود ما با دور زدن بتوانیم به مخازن وبسایت دسترسی پیدا کنیم، کاربران در حالت عادی نمی توانند سایت را ببینند و آنها هم مجبورند از VPN یا پروکسی یا روشهای مشابه استفاده کنند.
سلام، آره برای page ها متاسفانه نمیشه کاری کرد، مثل اینکه روی بلاگاسپات بلاگ داشته باشی و فیلتر/تحریم بشه، ولی کارای دیگه رو میشه استفاده کرد دیگه… من ممکنه پروژههام روی گیتلب باشه و کارم بهش گره خورده تا حدی
یکی از راههای هم میشه این باشه که به صورت کلی بیخیال gitlab.com بشیم و بجاش از framagit.org که نسخهی آزاد گیتلب رو هوست میکنه استفاده کنیم. اینجا یک کم در موردش نوشتم:
https://forum.ubuntu.ir/index.php?topic=148373.msg1158150
آقای علی مولایی دم شما گرم واقعا.
علی مولایی ، امید تیم مایی.
سلام.
توی چرا گنو/لینوکس گفتی:
“همین داستان راجع به نرمفزارها هم صادقه، اگر ما پول نداریم از مایکروسافت ویندوز بخریم، یا از ادوبی فوتوشاپ بخریم، یا اینا به ما نمیفروشن، آیا ما مجوز داریم که ازشون دزدی کنیم و نرمافزاراشون رو کرک کنیم؟”
آیا این کار با این حرف تناقض نداره؟
نه اینجا فرقی که وجود داره اینه که گیتلب با ایران مشکلی نداره، اونا فقط رفتن رو گوگل کلاود، که یه چیز عادی هست برای یه پروژه، ساید افکتش شده اینکه ما دسترسی نداریم، گیتلب نگفته کاربرای ایران حق ندارن استفاده کنن
میخواستن اینترنت جهانی هم قطع کنن چندساعت!
گرفتار اومدن یعنی همین
سلام شاید باورت نشه علی مولایی عزیز!!!
ولی من یه روزه نشستم و تمام پست های وبلاگت رو خوندم واقعا عالی بود مرسی ?
لطفا اینو به یکی از فایلهای css اضافه کنید که کدهاتون درست نمایش داده بشن
pre, code {
font-family: VRCD, monospaced;
direction: ltr;
}
Done, Thanks