آموزش git grep


دستور git grep جز یکی از دستورات جالب در گیت است که با کمک آن می توانیم داخل فایل های پروژه سرچ کنیم و ببینیم پترنی که دنبال اش هستیم داخل چه فایل هایی موجود است

این دستور کاربردی مانند دستور زیر در لینوکس دارد که یک عبارت را داخل یک دایرکتوری یا فایل سرچ میکنیم :‌

grep "one word" filename

خب حالا بریم سراغ مثال های مربوط به دستور git grep :

در این مثال تمام فایل هایی که داخل آن کلمه ali هست را برایمان لیست می کند

git grep ali

در مثال بعدی از سوئیچ n- استفاده میکنیم که شماره خط مورد نظر که مقدار ali داخل آن بوده را نیز برمیگرداند :‌

git grep -n ali

می توانیم با استفاده از سوئیچ l- فقط فایل هایی که کلمه ali داخل اشان موجود هست را به صورت لیست نمایش می دهد :

git grep -l ali

سوییچ c- به ما تعداد مواردی که در هر فایل پیدا شده است را به همراه اسم اون فایل نمایش می دهد :‌

git grep -c ali

می توانیم یک فایل را مشخص کنیم و سرچ کردن را فقط داخل یک فایل (به عنوان مثال index.php) انجام دهیم :‌

git grep  ali index.php

حتی میتوانیم به صورت or از این دستور استفاده کنیم . به عنوان مثال فایل هایی را پیدا کن که داخل آنها ali یا reza موجود است :‌

git grep -e ali -e reza

می توانیم مشخص کنیم خط هایی را که داخل آنها هم ali باشد و هم reza . دقت کنید در این مثال فقط خط هایی که هم داخل آن ali هست و هم reza می اورد

git grep -e ali --and -e reza

اگر بخواهیم فایل هایی را پیدا کنیم که داخل آن فایل هم ali باشد و هم reza و مهم نباشد آن دو کلمه در یک خط باشند . از سوئییح all-match— استفاده میکنیم :‌

git grep --all-match -e ali -e reza

با استفاده از کامند git grep میتوانیم داخل یک کامیت یا برنچ خاص دنبال چیزی بگردیم . مثلا در کامیت HEAD دنبال فایل هایی که داخل اشون ali هست بگردیم :‌

git grep "ali" HEAD

یا مشخص کنیم در برنچ dev فایلی وجود دارد که داخل آن ali باشد :‌

git grep "ali" dev