Git-ის ახალი ნაგულისხმევი ჰეში – რას ნიშნავს ეს
Git-ის შემოთავაზებული SHA-256 ნაგულისხმევი ქმნის თავსებადობის ზღვარს ახალი საცავებისთვის.
Git-ის შემოთავაზებული SHA-256 ნაგულისხმევი ქმნის თავსებადობის ზღვარს ახალი საცავებისთვის. ჩვენ ვამოწმებთ ოფიციალურ გეგმას, სკოტ ჩაკონის წინააღმდეგობას და GitHub-ის მოქმედი წინასწარი გადახედვის გამონაკლისს, შემდეგ კი განვიხილავთ Pi 1.0-სა და SvelteKit 3-ს. ვერდიქტი: NEEDS REVIEW.
წაიკითხეთ წერილობითი გამოცემა (ინგლისური) ↗
რას მოიცავს ეს ვიდეო
- რატომ შეიძლება ორმა Git საცავმა უარი თქვას კომუნიკაციაზე?
- რას ცვლის Git 3 რეალურად?
- რატომ უნდა შეიცვალოს SHA-1, თუ Git აღმოაჩენს შეჯახებებს?
- რა აჩვენა ჩვენმა ლოკალურმა თავსებადობის შემოწმებამ?
- რა გადაურჩება ავარიას Pi Durable-ში?
ნათარგმნი ტრანსკრიპტი
ნათარგმნია ორიგინალური ინგლისური ნარატივიდან. ხელმისაწვდომი აუდიო და სუბტიტრები კონტროლდება YouTube-ის მიერ.
რატომ შეიძლება ორმა Git საცავმა უარი თქვას კომუნიკაციაზე?
0:00 იფიქრებდით, რომ Git-ის განახლება თქვენს ინსტრუმენტებს ამუშავებს. Git-ის დაგეგმილი ახალი ჰეშის ნაგულისხმევი ქმნის საცავებს, რომლებსაც დღევანდელი ძველი ფორმატი ვერ ესაუბრება. ამ ვიდეოში, რატომ შეიცვალა? რა იშლება? ვინ არის მზად? GitHub-ზე უკვე არის მოქმედი გამონაკლისი. ბოლოს გაჩვენებთ, რას ამტკიცებს ეს. პარასკევია, ოქტომბრის მეორე, და ეს არის The Daily Diff.
0:18 ხუთშაბათს, GitHub-ის თანადამფუძნებელმა Git-ის დაგეგმილ ცვლილებას ძვირი შეცდომა უწოდა. Pi-მ გამოუშვა ახალი აგენტის აღკაზმულობა, და SvelteKit-მა გამოუშვა კიდევ ერთი მიგრაცია. სკოტ ჩაკონი დაეხმარა GitHub-ის შექმნაში და დაწერა Pro Git, ამიტომ ეს საჩივარი მოდის სახლის შიგნიდან. სახლი ასევე ყიდის Git ინსტრუმენტებს. პირველ რიგში, რეალური გეგმა.
რას ცვლის Git 3 რეალურად?
0:35 Git სამი ახალ საცავებს ნაგულისხმევად SHA ორმოცდათექვსმეტზე დააყენებს, მას შემდეგ, რაც ბიბლიოთეკები და ჰოსტინგის სერვისები მზად იქნებიან მის მხარდასაჭერად. ოფიციალური დოკუმენტი არ აძლევს გამოშვების თარიღს და ინარჩუნებს SHA ერთის მხარდაჭერას. თქვენი არსებული საცავი ჯადოსნურად არ ცვლის ფორმატს, როდესაც განაახლებთ აღმასრულებელს. ამის დამახსოვრება ღირს, სანამ თქვენი ჯგუფური ჩატი დაგეგმავს საგანგებო მიგრაციას. დრამა არის შემოთავაზებული ნაგულისხმევი, და დედლაინი ამჟამად ცარიელი კალენდარია.
რატომ უნდა შეიცვალოს SHA-1, თუ Git აღმოაჩენს შეჯახებებს?
0:58 რატომ შეიცვალა საერთოდ? Git ასახელებს ობიექტებს მათი შიგთავსის ჰეშირების გზით. ფაილები იკვებება ხეებში, და კომიტები ეხება ხეებს და ადრინდელ კომიტებს. ეს გაძლევთ მთლიანობას ისტორიის მასშტაბით. შეცვალეთ ჰეშირების სქემა და ობიექტის სახელებიც იცვლება, მათ შორის სხვა ობიექტებში შენახული მითითებები. ჩაკონი ბრუნდება Linus Torvalds-თან, Git-ის შემქმნელთან, ამტკიცებს, რომ სანდო
1:17 განაწილებას აქვს მნიშვნელობა. ეს ისტორიული პოზიციაა, და Linus-მა SHA ერთი აირჩია უკან ორ ათას ხუთში. უსაფრთხოების საქმე მას შემდეგ შეიცვალა. მკვლევარებმა SHA ერთი შეჯახებები აჩვენეს ორ ათას ჩვიდმეტში, და მოგვიანებით აჩვენეს არჩეული პრეფიქსის შეტევა PGP იდენტობის სერტიფიკატების წინააღმდეგ. თანამედროვე Git ამოიცნობს ცნობილ შეჯახების შეტევებს გამძლე SHA ერთი-თ. მისი შემნარჩუნებლები იცავენ თავს მომავალი შეტევებისგანაც, რაც გონივრული რამ არის ხელმოწერებისგან მოთხოვნა.
1:41 ჩაკონი ფიქრობს, რომ ეკოსისტემის გადასახადი ძალიან მცირე უსაფრთხოებას იძენს. ის გთავაზობთ ხის შიგთავსის ცალკეული ძლიერი საკონტროლო ჯამის ხელმოწერას, ქვემოთ არსებული ობიექტის მისამართის შენარჩუნებისას. რა იშლება? მე შევქმენი ორივე ფორმატი ლოკალურად და დავჰეშე იგივე პატარა ფაილი.
რა აჩვენა ჩვენმა ლოკალურმა თავსებადობის შემოწმებამ?
1:54 ერთ ობიექტის სახელს აქვს ორმოცი თექვსმეტობითი სიმბოლო, მეორეს აქვს სამოცდაოთხი. შემდეგ ვცადე მათ შორის გამოტანა. ჩემმა დაინსტალირებულმა Git-მა უარყო ის არათანხვედრი ალგორითმებით, ზუსტად ის თავსებადობის უფსკრული, რომელიც აღწერილია მიმდინარე ოფიციალურ სახელმძღვანელოში. ამან გამოიყენა ჩემი ძველი დაინსტალირებული Git, ასე რომ ის გვეუბნება დღევანდელ ზღვარს. მას გაუქმებელი Git სამის ტესტს ეწოდებოდა კრეატიული აღრიცხვა. მიგრაციის სამუშაო აღწევს სკრიპტებში, რომლებიც ვარაუდობენ ჰეშის სიგრძეს, და სისტემებში, რომლებიც უკავშირდება ობიექტის სახელებს.
2:19 ისტორიის გადაჰეშება საჭიროებს რუკას ამ იდენტობებს შორის. Git-ის გადასვლის დიზაინი მოიცავს ამ რუკას და ხელმოწერის დამუშავებას. იმპლემენტაციის მზადყოფნას აქვს მნიშვნელობა, რადგან დიზაინის დოკუმენტი არ ანახლებს ბიბლიოთეკას, რომელიც იმალება თქვენს საყვარელ დეველოპერულ ინსტრუმენტში. ეს არის ადამიანური ხარჯი ჩაკონის არგუმენტში. ყველა ინსტრუმენტის შემნარჩუნებელი იღებს კიდევ ერთ თავსებადობის სამუშაოს, სანამ მომხმარებლები აღმოაჩენენ, რომ მათ ვერსიის კონტროლს ახლა ვერსიის კონტროლი სჭირდება. ამჟამად, შეამოწმეთ თქვენი ჰოსტი და ინსტრუმენტები, სანამ ახალ ფორმატს აირჩევთ
2:44 პროექტისთვის. არსებულ გუნდებს შეუძლიათ შეინარჩუნონ თავიანთი მიმდინარე ფორმატი, სანამ ეს ეკოსისტემა დაეწევა. ამასობაში, Pi-მ მიაღწია ერთ წერტილს ნულს.
რა გადაურჩება ავარიას Pi Durable-ში?
2:51 ეს არის კოდირების აგენტის აღკაზმულობა Earendil-ისგან, MCP-ის მშობლიური მხარდაჭერით Codemode-ის საშუალებით და ინსტრუმენტები იტვირთება საჭიროებისამებრ. გუნდი მინიმალიზმს უწოდებს აზრს. თუ თქვენი აგენტის დაყენება უკვე ჰგავს მცირე მთავრობას, ინსტრუმენტების მოთხოვნიდან საჭიროებამდე შენარჩუნება ადმინისტრაციულ რეფორმას ჰგავს. მან ასევე გამოუშვა Pi Durable, ცალკე ექსპერიმენტული ჩარჩო. ამოცანები ინახავს საკონტროლო პუნქტებს, რათა გადატვირთულ პროცესს შეეძლოს დაუმთავრებელი სამუშაოს აღება მუდმივი საცავიდან. გადამწყვეტი დეტალია ხელსაწყოს ხელახალი დაკვრა.
3:16 ავარიით შეწყვეტილი ხელსაწყო ხელახლა იმუშავებს მხოლოდ მაშინ, როდესაც ის აცხადებს, რომ უსაფრთხოა. წინააღმდეგ შემთხვევაში მოდელს ეუბნება, რომ ის შეწყდა. ეს სასარგებლო ზღვარია, როდესაც ხელსაწყოს შეუძლია ფულის დახარჯვა. მინდა, ასისტენტს ახსოვდეს ჩემი საყიდლების სია ავარიის აღნიშვნის გარეშე ორჯერ ყიდვით.
რას მიგრაციას უკეთებს SvelteKit 3 თქვენთვის?
3:30 SvelteKit სამი ასევე გამოვიდა ხუთშაბათს, გადააქვს კონფიგურაცია Vite-ში და ცვლის დოლარ lib-ს ჰეშ lib-ით, სტანდარტული პაკეტის ქვეპათის იმპორტის გამოყენებით. მიგრაციის ბრძანება გადაწერს რისი გადაწერაც შეუძლია და ტოვებს გასაკეთებელი სიას დანარჩენისთვის. თქვენს რობოტს შეუძლია დახმარება, და თქვენი განსხვავება კვლავ იმსახურებს წაკითხვას. განცხადება თქვენს რობოტ მეგობრებსაც კი იწვევს ნარჩენებისთვის. ჩვენ მივაღწიეთ იმ წერტილს, სადაც ჩარჩოს განახლება აგზავნის საშინაო დავალებას და შემოთავაზებული შემცვლელი მასწავლებელი. და დისტანციურ ფუნქციებს კვლავ სჭირდებათ ექსპერიმენტული Async Svelte.
3:56 ძირითადი ვერსიის ნომერი დამამშვიდებელია, მაგრამ ინდივიდუალურ ფუნქციებს აქვთ საკუთარი სიმწიფის ნიშნულები. შეამოწმეთ ის, რასაც რეალურად იყენებთ.
რას ამტკიცებს GitHub-ის მოქმედი გამონაკლისი?
4:03 ასე რომ, ვინ არის მზად Git-ის ახალი ფორმატისთვის? აი ეს გამონაკლისი. საჯარო GitHub საცავი, რომელიც შეიცავს ბრაიან კარლსონის გამოსვლას, უკვე აბრუნებს სრულ SHA ორმოცდათექვსმეტი ობიექტის სახელს. მე უშუალოდ შევამოწმე საჯარო დისტანციური. გამოსვლის სლაიდები მხარდაჭერას კერძო წინასწარ გადახედვას უწოდებენ და ამბობენ, რომ საცავის შექმნა კვლავ მოდის. ლოდინის ოთახის მიღმა არის რეალური პროგრესი. ეს ამტკიცებს, რომ GitHub-ს შეუძლია ამ წინასწარი გადახედვის საცავის მომსახურება.
4:24 ის გვაძლევს ნულოვან გარანტიას, რომ ჩვეულებრივი პროექტის შექმნა ან თქვენი ყველა ინტეგრაცია მზადაა. გამონაკლისს აქვს ნებართვის ზღვარი. თუ ამას კითხვა გირჩევნიათ, ვიდრე ჩემი მოსმენა, განსხვავება თქვენს შემოსულებში ხვდება ყოველ დილით, უფასოდ the daily diff dot dev-ზე, ბმული ქვემოთ. ასე რომ, დღევანდელი ვერდიქტი არის NEEDS REVIEW.
რატომ არის ჩემი ვერდიქტი დამოკიდებული მთლიან ინსტრუმენტთა ჯაჭვზე?
4:40 მე შევინარჩუნებდი უფრო ძლიერი ჰეშის ვარიანტს და შევამოწმებდი მთელ ინსტრუმენტთა ჯაჭვს, სანამ ნაგულისხმევ პარამეტრებს შევცვლიდი. თავსებადობა უსაფრთხოების გაუმჯობესების მიწოდების ნაწილია. და ეს არის დღევანდელი განსხვავება. მე ვარ ნიკო Axrisi-დან. შეაერთეთ პასუხისმგებლობით.
წყაროები
- Chaconblog.gitbutler.com
- Git's official plangit-scm.com
- Current interoperabilitygit-scm.com
- Transition designgit-scm.com
- Independent collision researchsha-mbles.github.io
- GitHub preview repositorygithub.com
- Pi 1.0earendil.com
- Pi Durableearendil.com
- SvelteKit 3svelte.dev
- HN discussionnews.ycombinator.com



