@شپلفالکسی شپلف
توسعه دهنده Ruby on Rails
یکی از اولین توصیه هایی که یک جوان جوان Padawan با دسترسی به مخازن git می کند این است: “هرگز از git push -f استفاده نکنید”. از آنجا که این یکی از صدها حرفی است که یک مهندس نرم افزار تازه کار نیاز به یادگیری آن دارد ، هیچ کس وقت نمی گذارد تا دلیل این کار را روشن کند. مثل نوزادان و آتش است: “کبریت ها اسباب بازی کودکان نیستند” و بس. اما ما هم به عنوان افراد و هم به عنوان حرفه ای رشد و توسعه می یابیم و روزی این س theال مطرح می شود که “در واقع ، چرا؟” ممکن است بوجود بیاید.
من شنیده ام که در بعضی از شرکت ها توانایی پاسخگویی به این س atال در یک مصاحبه ملاک استخدام برای مشاغل ارشد است.
اما برای درک بهتر پاسخ آن ، باید بدانید که چرا بازنویسی تاریخ بد است؟
برای انجام این کار ، به نوبه خود ، ما نیاز به یک گشت و گذار سریع در ساختار فیزیکی یک مخزن git داریم. اگر کاملاً مطمئن هستید که درباره ساختار repo همه چیز را می دانید ، می توانید از این قسمت صرف نظر کنید. اما در مورد من ، من بسیاری از چیزهای جدید را در مرحله روشن شدن یاد گرفتم ، و معلوم شد که برخی از دانش های قدیمی چندان مرتبط نیستند.
در پایین ترین سطح ، git repo مجموعه ای از اشیا and و اشاره گرها به آنها است. هر شی object دارای هش 40 کاراکتر منحصر به فرد خود است (20 بایت هگزادسیمال) ، که براساس …