From 30da936406587bcb7b7e51dcdadb56013e9aefc1 Mon Sep 17 00:00:00 2001 From: Tran Ngoc Quan Date: Wed, 23 Feb 2011 14:13:25 +0700 Subject: [PATCH] Edit secrets --- vi/secrets.txt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/vi/secrets.txt b/vi/secrets.txt index 59dce8f..fa50efe 100644 --- a/vi/secrets.txt +++ b/vi/secrets.txt @@ -14,15 +14,15 @@ Các hệ thống quản lý mã nguồn khác ép buộc bạn luôn luôn ph Phần lớn mọi người sử dụng phương pháp mã hóa để giữ cho thông tin của mình không bị nhòm ngó, nhưng có thứ quan trọng không kém đó là giữ cho thông tin của mình được toàn vẹn. Chính việc sử dụng hàm băm mã hóa đã làm ngăn ngừa sự sai hỏng dữ liệu do rủi ro hay ác ý. -Giá trị SHA1 có thể coi như là một số định danh 160-bit không trùng lắp cho mỗi chuỗi ký tự bạn dùng trong đời sống của mình. Trên thực tế nó còn làm được nhiều hơn thế: mọi chuỗi ký tự that any human will ever use over many lifetimes. +Giá trị SHA1 có thể coi như là một số định danh 160-bit không trùng lắp cho mỗi chuỗi ký tự bạn dùng trong đời sống của mình. Trên thực tế nó còn làm được nhiều hơn thế: nó có thể thực hiện điều trên với mọi chuỗi ký tự mà mọi người có thể sử dụng trong suốt cuộc đời của mình. -Bản thân giá trị SHA1 cũng là một chuỗi ký tự, chúng ta có thể băm chuỗi có chứa giá trị băm khác. This simple observation là cực kỳ hữu dụng: tra cứu 'hash chains'. Sau này chúng ta sẽ thấy làm cách nào Git sử dụng nó để mà đảm bảo tính toàn vẹn của dữ liệu. +Bản thân giá trị SHA1 cũng là một chuỗi ký tự, chúng ta có thể băm chuỗi có chứa giá trị băm khác. Khả năng quan sát đơn giản này cực kỳ hữu dụng: tra cứu 'hash chains' (tra cứu theo các chuỗi móc xích với nhau bằng giá trị băm). Sau này chúng ta sẽ thấy làm cách nào Git sử dụng nó để mà đảm bảo tính toàn vẹn của dữ liệu. -Tóm lại, Git lưu giữ dữ liệu của bạn trong thư mục con `.git/objects`, thay vì sử dụng tên tệp tin như thông thường, bạn sẽ chỉ nhìn thấy ID của chúng. Bằng cách sử dụng ID để làm tên tệp tin, cũng tốt như là cách sử dụng lockfiles và timestamping, Git biến đổi bất kỳ hệ thống tệp tin thông thường bất kỳ nào thành một cơ sở dữ liệu hiệu quả và mạnh mẽ. +Tóm lại, Git lưu giữ dữ liệu của bạn trong thư mục con `.git/objects`, thay vì sử dụng tên tệp tin như thông thường, bạn sẽ chỉ nhìn thấy ID của chúng. Bằng cách sử dụng ID để làm tên tệp tin, cũng tốt như là cách sử dụng kỹ thuật lockfiles và timestamp, Git biến đổi bất kỳ hệ thống tệp tin thông thường bất kỳ nào thành một cơ sở dữ liệu hiệu quả và mạnh mẽ. === Thông Minh=== -Làm thể nào mà Git biết bạn đã đổi tên một tệp tin, dù là bạn chẳng bao giờ đề cập đến điều này một cách rõ ràng? Chắc chắn rồi, bạn có lẽ đã chạy lệnh *git mv*, nhưng but that is exactly the same as a *git rm* theo sau bởi lệnh *git add*. +Làm thể nào mà Git biết bạn đã đổi tên một tệp tin, dù là bạn chẳng bao giờ đề cập đến điều này một cách rõ ràng? Chắc chắn rồi, bạn có lẽ đã chạy lệnh *git mv*, nhưng nó chính xác giống hệt như việc chạy lệnh *git rm* sau đó là lệnh *git add*. Git khám phá ra cách truy tìm các tệp tin đã được đổi tên hay sao chép giữa các phiên bản liên tiếp. Trên thực tế, nó có thể tìm ra từng đoạn mã nguồn đã bị di chuyển hay sao chép giữa các tệp tin! Dẫu cho nó không thể xử lý được mọi trường hợp, it does a decent job, và đặc tính này luôn luôn được phát triển. Nếu nó không làm việc với bạn, hãy thử bật các tùy chọn dành cho việc phát hiện sự sao chép, và nên cất nhắc đến việc cập nhật. @@ -44,11 +44,11 @@ http://lkml.org/lkml/2005/4/6/121[Linux Kernel Mailing List post] này miêu t === Đối tượng Cơ Sở Dữ Liệu === -Mỗi một phiên bản của dữ liệu của bạn được giữ trong 'object database', mà nó nằm trong -thư mục con `.git/objects`; the other residents of `.git/` hold lesser data: +Mỗi một phiên bản của dữ liệu của bạn được giữ trong 'đối tượng cơ sở dữ liệu' (object database), mà nó nằm trong +thư mục con `.git/objects`; cái khác nằm trong thư mục `.git/` lưu giữ ít dữ liệu hơn: mục lục, tên các nhánh, các thẻ tag, các tùy chọn cấu hình, nhật ký, vị trí -hiện tại của location of the head commit, và những thứ tương tự như thế. The object database is elementary yet -elegant, và cội nguồn sức mạnh của Git. +hiện tại của head của lần commit, và những thứ tương tự như thế. Đối tượng cơ sở dữ liệu cho đến bây giờ vẫn là phần tử cơ bản xuất sắc nhất, +và là cội nguồn sức mạnh của Git. Mỗi tệp tin trong `.git/objects` là một 'đối tượng'. Ở đây có 3 loại đối tượng liên quan đến chúng ta: đối tượng 'blob', đối tượng cây 'tree', và đối tượng 'commit'. -- 2.11.4.GIT