استفاده از meld بعنوان ابزار پیشفرض نمایش تفاوت ها در گیت

سلام

خیلی وقتا میخوایم ۲ فایل یا ۲ برنچ رو با هم مقایسه کنیم در گیت البته. امروز من همین نیاز رو داشتم و خب قبلا با meld کار کرده بودم ولی اینکه بخواد ۲ تا برنچ رو مقایسه کنه همچین گزینه ای پیدا نکردم. با یکم سرچ به این نتیجه رسیدم:

اول meld رو بعنوان ابزار نمایش تفاوت ها تنظیم میکنیم:
git config –global diff.tool meld

بعد در کامند لاین برای دیدن تفاوت های دو برنچ از دستتور زیر استفاده میکنیم. فرض کنین الان تو برنچ ABC هستیم میخوایم بنچمون رو با برنچ XYZ مقایسه کنیم دستور زیر رو تایپ میکنیم:

git difftool -d XYZ

یه تغییر تو کامیت قبلی جا مونده؟ نگران نباش!

تا حالا پیش اومده یه چیزی رو کامیت کنین… چند تا کامیت هم بگذره بعد یادتون بیاد ای داد بیداد فلان چیزو یادم رفت تو اون کامیت اولیه ادد کنم؟ نگران نباشین راه حل داره.

تو برنچی که هستین (برنچ آخر) تغییراتتون رو اعمال کنین و:
git add -A
یا حالا فایل یا دایرکتوری میخواین اضافه کنین دستورشو خودتون میدونین دیگه.
بعد گیت لاگ بگیرین و هش اون کامیت رو در بیارین. و دستور زیر رو بزنین:
git commit –fixup=اون‌هش
و بعد:
git rebase –interactive –autosquash OLDCOMMITHASH^

همین. دنبال همچین چیزی بودم گیر ریبیس افتادم که گیت استاتوس میگرفتم میزد وسط ریبیس هستی. اگر شمام همچین چیزی داری کد زیر رو بزنین ریبییس رو میبنده:
git rebase –abort
البته اینو بهتره قبل همه کدای بالا بزنین.

موفق باشید

چطور وقتی تغییرات ما در gitignore اعمال نمیشه دستی انجامش بدیم؟

امروز اومدم با گیت یه پروژه قدیمی کار کنم. و اون زمان پوشه vendor رو گذاشته بودم تو گیت. خب اومدم gitignore رو تغییر بدم اما متوجه نشدم چرا اعمال نشد! ولی خب با سرچ راه حل خوبی پیدا کردم.

بعد اینکه فولدری که میخوایم رو به gitignore  اضافه کردیم. به ترتیب دستورات زیر رو انجام میدیم.

git rm -r --cached vendor

git add .
git commit -m ".gitignore"

چطور نام کاربری و رمز عبور رو هنگام pull و push یک بار وارد کنم و برای همیشه ذخیره بشه؟

من دارم از اوبونتو ۱۸ استفاده میکنم. چطور نام کاربری و رمز عبور رو هنگام پول و پوش یک بار وارد کنم و ذخیره بشه و هر بار از من اینو نپرسه که رمز عبورت و نام کاربریت چیه؟

به سادگی:

git config --global credential.helper store

بعد پول کنین. این کار نام کربری و رمز شمارو در یک فایل با نام ~/.git-credentials ذخیره میکنه که خیلی امن نیست. راحت همه میبینن حتی هش هم نمیشه. ولی راه حل بهتری اگر میشناسین بیگین یا خودم اینجا بعدا آپدیت میکنم.

منبع: How to save username and password in git?

حذف گواهی یا اعتبار نامه یا همون Credential در گیت در محیط ویندوز

موقعی که خواستم با phpstorm به گیت لب کانکت شم نام کاربریمو اشتباه زدم و مجبور شدم چند تا سایتو ببینم تا به جواب برسم.

اول اینکه تصور میکردم اعتبار نامه ها یا همون Credential در phpstorm ذخیره میشن و بعدا تصور کردم در گیت ولی در هیچ کدوم نبود!

منوی استارت ویندوز رو بزنین و عبارت Credential Manager رو سرچ کنین و اعتبار نامه خودتون رو ویرایش یا حذف کنین.

اینم عکسش

Windows Credential Manager
Credential Manager

Remove credentials from Git
Remove phpstorm git password
Remove git Password

دور زدن تحریم گیت لب با git proxy

سلام

امروز میخوام راه دور زدن تحریم هایی که به گیت مربوط میشن رو آموزش بدم. وقتی با putty به ssh سرورتون تونل میزنین (از socks استفاده میکنید) برای این کار خیلی ساده به cmd برین و دستورات زیر رو تایپ کنین:

git config --global http.proxy socks5://127.0.0.1:1234
git config --global https.proxy socks5://127.0.0.1:1234

 

بجای ۱۲۳۴ پورتی که برای تونل تعریف کردید استقاده کنین. برای پاک کردن تنظیمات پراکسی هم از دستورات زیر استفاده کنین

git config --global --unset http.proxy
git config --global --unset https.proxy

 

موفق باشید