Profillər eyni anda iki məqsədə xidmət edir: həm bağlantı parametrlərini qeyd edir, həm də işlək etimad məlumatları dəstini daşıyır. Fayl uzantısı sizə hansını tutduğunuz barədə heç nə demir. Onun repozitoriyaya aid olduğuna qərar verməzdən əvvəl məzmunu oxuyun.

Aşağıdakı addımlar versiya nəzarəti üçün nəzərdən keçirilən müştəri şablonunu nəzərdə tutur. Onları ardıcıllıqla yerinə yetirin və etibarsız edə bilməyəcəyiniz heç nəyi commit etməzdən əvvəl dayanın.

İndeksə əlavə etmək istədiyiniz faylı oxuyun

Faktiki baytlardan başlayın, çünki ayrı fayllara istinad edən profil onları özünə daxil edən profildən tamamilə fərqli görünür. PEM blok işarələrini və ca, cert, key, tls-auth və tls-crypt adlı daxili teqləri axtarın; eyni axtarış sizə hər iki halı göstərəcək. Şifrələnmiş şəxsi açar hələ də həssas material sayılır və ortaq tls-auth və ya tls-crypt açarı istifadəçi kimliyi olmasa da etimad məlumatıdır. Profillə birlikdə indeksə əlavə edilən hər şeyə, o cümlədən etimad faylına istinad edən arxivlərə və quraşdırma skriptlərinə də eyni yoxlamanı tətbiq edin.

Sonra iş ağacına deyil, indeksdəki dəstə baxın. git diff --cached commit-in həqiqətən nəyi ehtiva edəcəyini göstərir və bu qərar üçün əhəmiyyətli olan yeganə versiya məhz budur.

Repozitoriyanın nə paylaşmasına icazə verildiyini müəyyən edin

Şablon ortaq, yoxlanılmış parametrləri və insanın qeydiyyat zamanı aldığı hər şey üçün adlı yer tutucuları daşıya bilər. Daşıya bilmədiyi şey işlək kimlikdir, çünki repozitoriya onu oxuya bilən hər kəsə, avtomatlaşdırma da daxil olmaqla, paylanır. Şəxsi repozitoriya auditoriyanı daraldır, amma hər oxucunun həmin etimad məlumatı üçün səlahiyyətli olub-olmadığı sualını dəyişmir.

İgnor qaydası gələcək əlavələrin qarşısını alır və artıq qeydə alınmış şeylər barədə heç nə etmir. Bu asimmetriyanı onuncu commit-dən sonra deyil, birincidən əvvəl mənimsəməyə dəyər. İnfrastruktur adları və ünvanları ayrı bir mühakimədir: onlar autentifikasiya sirləri deyil, lakin komandanın dərc etmək istədiyindən çoxunu açıqlaya bilər. Hər sətri parol və ya ictimai kimi sıralamaq əvəzinə bu qərarı açıq şəkildə verin.

Material artıq tarixçədədirsə

Sətri yeni commit-də silmək köhnə versiyanı onu çəkən hər kəs üçün toxunulmaz saxlayır. İfşanı real qəbul edin: etimad məlumatının növünü müəyyən edin, sonra onu etibarsız edə biləcək orqanı tapın. Müştəri sertifikatı ləğv edilir və ləğv siyahısı yenidən yaradılır; ortaq idarəetmə kanalı açarı serverdə və ondan istifadə edən hər müştəridə əvəz olunur.

İkisinin təsir radiusu çox fərqlidir və plan başlamazdan əvvəl hansını icra etdiyinizi bildirməlidir. Materialı gətirən commit-i git log --all -S 'BEGIN PRIVATE KEY' kimi bir axtarışla tapın ki, təmizləmə həcmi təxmin deyil, məlum olsun. Həmkarın klonu və ya fork artıq köhnə obyekti saxlaya bilər; buna görə ləğv birinci, təmizlik ikinci gəlir.

Təmizliyi yalnız zərərsizləşdirmədən sonra aparın

Tarixçənin yenidən yazılması düzəltdiyiniz commit-dən sonrakı hər commit-i dəyişdirir, ona görə də əvvəlcə repozitoriyanın sahibi və içində işləyən insanlar razılaşmalıdır. Məcburi push təmir deyil; öz geri qaytarma riski olan bir koordinasiya hadisəsidir. Onu planlaşdırın, ehtiyat nüsxə götürün və komandaya nə vaxt olacağını deyin.

Sonra alətin xülasəsinə güvənmək əvəzinə cari ağacı və qalan tarixçəni yoxlayın.

Nəticəni iki artefakt kimi saxlayın: paylaşmaq üçün təhlükəsiz şablon və qeydiyyat prosesi ilə verilmiş etimad məlumatlarının siyahısı. Heç biri repozitoriyada işlək kimliyin olmasını tələb etmir.

Bu ayrım əsl həlldir və profil commit etmək istəyən növbəti insandan da sonra qalacaq.

Əlaqəli məqalələr