Nếu bạn là người dùng Linux, bạn có thể gặp Git tại một số thời điểm, có lẽ trong khi cố gắng tải xuống một chương trình mới hoặc xem xét các hệ thống kiểm soát phiên bản như CVS hoặc Subversion. Git là hệ thống kiểm soát sửa đổi được tạo ra bởi Linus Torvalds nổi tiếng của hạt nhân Linux do thiếu sự hài lòng với các giải pháp hiện có. Trọng tâm chính trong thiết kế là tốc độ, hoặc cụ thể hơn, hiệu quả. Git giải quyết nhiều thiếu sót của các hệ thống trước đó, và làm tất cả trong thời gian ít hơn rất nhiều.

Git gì

Giả sử bạn đang làm việc để tạo trang web cho khách hàng. Họ nói những gì họ muốn, bạn thiết kế nó, họ xem xét nó và thực hiện các sửa đổi, rửa sạch, lặp lại. Với mỗi bộ sửa đổi từ khách hàng, trang web thay đổi và phát triển. Sau đó, khách hàng có thể nói “Tôi thích nó trông đẹp hơn vào tháng 9 năm ngoái”. Trong hoàn cảnh bình thường, bạn đã có một vấn đề. Bạn có thể không có tất cả các tập tin và dữ liệu từ thời gian đó, và mã của bạn có thể đã thay đổi rất nhiều mà trở lại trở lại sẽ là khó khăn hoặc không thể.

Điểm của hệ thống kiểm soát sửa đổi là giải quyết gần như tất cả các vấn đề trong đoạn trên. Bạn có thể theo dõi từng thay đổi đối với mã và tệp của mình và hoàn nguyên tại bất kỳ điểm nào trở lại nơi mọi thứ.

Cách hoạt động của Git

Mỗi thư mục của dự án là kho lưu trữ Git của riêng nó. Bạn giữ tất cả các tệp của bạn cho dự án đó trong thư mục đó và định kỳ yêu cầu Git cập nhật thông tin của nó với trạng thái hiện tại của tệp. Quá trình nói với Git để ghi lại trạng thái là một cam kết . Mỗi lần bạn cam kết (nên thường xuyên) Git xem xét tất cả các tệp mà nó được hướng dẫn theo dõi và lưu sự khác biệt trong các tệp đó (không phải tất cả các tệp mới) vào thư mục .git. Mỗi cam kết sẽ trở thành một điểm lưu mới cho sự phát triển của dự án của bạn.

Tùy chọn, bạn có thể đẩy kho lưu trữ git cục bộ của bạn đến một máy chủ bên ngoài, chẳng hạn như GitHub.com . Điều này cho phép nhiều người đóng góp vào một dự án có thể thực hiện các cam kết thường xuyên, nhanh chóng đối với repo cục bộ của họ, sau đó gộp tất cả các cam kết cục bộ đó vào một bản cập nhật duy nhất cho kho lưu trữ trực tuyến. Đây là một trong những điều làm cho Git sử dụng nhanh hơn một số hệ thống VCS khác: bạn có thể cam kết thường xuyên với kho lưu trữ cục bộ của mình mà không lãng phí thời gian và băng thông phải tải lên máy chủ cho mỗi máy.

Bắt Git

Hầu hết người dùng Linux nên có Git (hoặc git-core ) có sẵn trong kho lưu trữ chuẩn của distro. Người dùng Ubuntu có thể cài đặt nó bằng cách nhấn vào đây, hoặc trong terminal:

 sudo apt-get cài đặt git-core 

Nếu bạn đang ở trên một nền tảng khác, hoặc nếu không không thể sử dụng các kho lưu trữ như vậy, bạn có thể tải xuống và cài đặt thủ công các gói tại đây. Ví dụ của chúng tôi dành cho Linux, nhưng phải giống hệt nhau cho tất cả các nền tảng được Git hỗ trợ.

Sử dụng Git

Quá trình tạo kho lưu trữ Git cục bộ rất nhanh chóng và dễ dàng. Tạo một thư mục mà bạn dự định sử dụng cho dự án của bạn và mở terminal của bạn đến vị trí đó. Tại dòng lệnh, nhập lệnh

 git init 

Thao tác này sẽ tạo thư mục .git để lưu trữ thông tin kho lưu trữ của bạn. Có khả năng, bạn sẽ muốn bắt đầu thêm một số tệp. Chúng ta sẽ bắt đầu bằng cách tạo một tệp README mẫu, thêm nó vào danh sách các tệp của kho lưu trữ để xem, sau đó cam kết tệp của chúng ta vào kho lưu trữ.

 #Insert một số văn bản vào một tập tin mới echo "TODO: Tạo tài liệu"> README.txt #Bây giờ cho Git để theo dõi các thay đổi của tập tin này # Điều này chỉ cần được thực hiện một lần cho mỗi tập tin (hơn #on rằng trong một thời điểm) git thêm README.txt # Và bây giờ lưu trạng thái vào Git repository git commit README.txt 

Bạn sẽ được đưa đến màn hình soạn thảo văn bản (chính xác trình soạn thảo văn bản nào phụ thuộc vào bản phân phối và cấu hình của bạn), nơi bạn nên nhập bất kỳ ghi chú nào về cam kết này. Đây thường là tóm tắt ngắn gọn về những thay đổi đã xảy ra kể từ lần commit cuối cùng. Khi bạn lưu và thoát khỏi trình soạn thảo văn bản, cam kết sẽ được hoàn tất thành công.

Về cơ bản, chúng tôi đã tạo ảnh chụp nhanh trạng thái hiện tại của tệp đó. Bất kỳ thay đổi nào khác (mà bạn cam kết) sẽ được lưu trên đó.

Việc thêm và cam kết từng tệp riêng lẻ như trong ví dụ trên có thể trở nên tẻ nhạt. Để khắc phục điều đó, bạn có thể thay thế tất cả các tệp trong thư mục hiện tại bằng

 # Ghi chú dấu "." git add. 

và bạn có thể cam kết tất cả các tệp đã biết, đã thay đổi cùng một lúc với

 git commit -a 

Một số tùy chọn lệnh git tiện dụng khác bao gồm:

 # Tạo một bản sao đầy đủ kho lưu trữ hiện có, chẳng hạn như từ trang web của dự án phần mềm git clone (URL, tức là git: //github.com/github/linux-2.6.git) # Di chuyển / đổi tên tệp. Điều này phụ thuộc bạn phải loại bỏ và thêm lại tệp #if nó đã được di chuyển bởi bash git mv (nguồn) (đích) # Xóa một tệp và loại bỏ khỏi Git repo git rm (target) #See branch trong kho lưu trữ này git branch # Tạo một nhánh mới của nhánh git tree git (tên nhánh mới, tức là "thử nghiệm") #Chuyển đổi từ một nhánh sang một thanh toán git khác (tên chi nhánh, tức là "thử nghiệm") #Merge branch (branch) thành git tree hiện tại hợp nhất (chi nhánh) 

Điều đó, tất nhiên, chỉ là khởi đầu của những gì Git có thể làm. Nếu bạn thấy nó hữu ích, tôi khuyên bạn nên chọn Git Community Book chính thức để có được một ý tưởng sâu sắc hơn về cách sử dụng phần mềm thông minh này.