GitIgnore là gì? GitIgnore mang lại những lợi ích gì?

Khi bạn cam kết với bất kỳ kho lưu trữ Git nào, bạn chọn các tệp bạn muốn di chuyển và cam kết với chúng. Nhưng sẽ có những tập tin không cần phải commit, GitIgnore xuất hiện với nhiệm vụ thực hiện commit để Git phân loại các tập tin. Vậy GitIgnore là gì?

GitIgnore là gì?

GitIgnore là một tệp trong Git giúp họ bỏ qua các tệp không mong muốn hoặc không mong muốn. Thông qua GitIgnore, bạn có thể gán các tệp tạm thời mà bạn không muốn nhận cam kết. Các tệp này không ảnh hưởng đến các nhà phát triển và các dự án khác.

gitignore-la-gi

GitIgnore cũng có thể bao gồm các mẫu yêu cầu Git nhận ra phiên bản chung của tệp để bỏ qua. Ví dụ: tệp * .log để bỏ qua các tệp có phần mở rộng .log.

GitIgnore hoạt động như thế nào?

Trong GitIgnore, mỗi dòng trong tệp .gitignore chỉ định một mẫu đường dẫn đến tệp. Khi nó quyết định bỏ qua một tệp, thư mục sẽ đi theo đường dẫn được phát hiện và Git thường kiểm tra các mẫu GitIgnore từ nhiều nguồn, theo thứ tự trước sau, để xóa cụ thể.

Nguồn ở đây có nghĩa là các vùng trong GitIgnore có thể được chồng chéo và xen kẽ hoặc được xác định từ các tệp GitIgnore khác nhau. Git sẽ xem xét điều này và hướng tới việc GitIgnore đáp ứng nhiều mẫu biểu hiện nhất có thể.

Các mẫu được sử dụng trong GitIgnore là gì?

Quá trình sử dụng * .log để bỏ qua các tệp .log, được gọi là một mẫu trong tệp .gitignore. Trong một số tình huống, họ có tùy chọn sử dụng các mẫu. GitIgnore tìm kiếm các mẫu trong nội dung và thực thi theo mẫu. Một số mẫu được sử dụng là:

  • Dòng trống - Hoạt động như một dấu phân cách chỉ để dễ đọc, không có ý nghĩa kỹ thuật.
  • # - Nếu bạn bắt đầu một dòng bằng #, mẫu sẽ được sử dụng làm chú thích.
  • # - Đây là trường hợp nếu # là một phần của mẫu. Ví dụ: nếu tên thư mục là #Tinohost sau đó chỉ định trực tiếp #Tinohost sẽ được coi là một bình luận, điều này được viết là # Máy chủ lưu trữ.
  • / - Điều này sẽ chỉ tìm kiếm trong các thư mục. Ví dụ, thư mục Tinohost sẽ chỉ tìm kiếm một thư mục có tên Tinohost, không tìm kiếm bất kỳ tệp nào có tên Tinohost.
  • ** / - Mẫu này sẽ tìm kiếm một thư mục hoặc tên tệp bằng . Ví dụ, ** / Tinohost, có nghĩa là Tinohost phù hợp với tất cả các thư mục.
  • / ** - Mẫu này khớp với bất kỳ thứ gì bên trong thư mục . Ví dụ, Tinohost / ** sẽ tìm kiếm tất cả các thư mục bên trong Tinohost.
gitignore-la-gi

Tệp mẫu GitIgnore

GitIgnore có thể được sử dụng trong tất cả các ngôn ngữ, phần mềm, công nghệ và công cụ mà bạn đang sử dụng trực tiếp trên phần mềm Git. Vì vậy, khi một nhà phát triển đang làm việc trong dự án của họ trên một môi trường phát triển tích hợp (IDE), họ tạo GitIgnore để tránh các cam kết. Dưới đây là một số tệp mẫu để bạn tham khảo.

  • Tệp mẫu Java GitIgnore: Sử dụng cho một dự án được phát triển bằng Java
  • Tệp mẫu GitIgnore Dot Net (.NET): Sử dụng cho một dự án đã được phát triển trong Dot Net
  • Hoàn thành tệp mẫu GitIgnore: Bạn có thể truy cập các tệp mẫu của GitIgnore cho các phần mềm, công cụ và ngôn ngữ khác nhau.
gitignore-la-gi

Một số quy tắc khi sử dụng GitIgnore

  • Bất kỳ dòng nào bắt đầu bằng dấu thăng (#) sẽ là một nhận xét.
  • Sử dụng để thoát các ký tự đặc biệt.
  • Ký tự / có nghĩa là quy tắc chỉ áp dụng cho các tệp và thư mục nằm trong cùng một thư mục.
  • Dấu hoa thị
  • có nghĩa là bất kỳ số ký tự nào, kể cả số không.
  • Dấu chấm hỏi (?) Thay thế cho 0 hoặc một ký tự.
  • Dấu chấm than (!) Chỉ định quy tắc ngược lại, bao gồm các tệp đã bị loại trừ bởi một mẫu trước đó.
  • Các dòng trống sẽ bị bỏ qua, bạn chỉ có thể sử dụng chúng để thêm không gian và làm cho tệp dễ đọc hơn.

Thêm / vào cuối bỏ qua toàn bộ đường dẫn thư mục.

Tệp GitIgnore cục bộ và toàn cầu

Địa phương

Tệp GitIgnore cục bộ nằm trong thư mục gốc của kho lưu trữ Git của bạn.  Tệp này chỉ hoạt động trên một kho lưu trữ cụ thể và phải được cam kết với kho lưu trữ đó.

GitIgnore là gì? GitIgnore mang lại những lợi ích gì? 19

Toàn bộ

Tệp GitIgnore toàn cục nằm ở thư mục gốc và nằm trong thư mục chính của bạn. Tệp này ảnh hưởng đến bất kỳ kho lưu trữ nào bạn sử dụng trên máy tính của mình, không cần phải cam kết với kho lưu trữ.

Nhiều nhà phát triển sử dụng GitIgnore cục bộ trong các dự án của họ và rất hiếm khi sử dụng tệp GitIgnore toàn cầu. Ưu điểm của GitIgnore toàn cầu là không cần phải cam kết sử dụng tệp đó, cũng như thực hiện các thay đổi ảnh hưởng đến tất cả các kho lưu trữ của bạn.

  • GitIgnore mang lại những lợi ích gì?
  • Giúp bạn giữ cho cơ sở mã của mình sạch sẽ bằng cách bỏ qua các tệp không mong muốn.
  • Giữ cho kích thước kho lưu trữ của bạn được kiểm soát là rất quan trọng khi bạn đang làm việc trên các dự án lớn.

Tất cả các yêu cầu điều khiển, đẩy và kéo của bạn đều được lọc sạch.

Làm thế nào để sử dụng GitIgnore?

  • Để giúp bạn quyết định những tệp nào cần thêm vào thư mục GitIgnore, hãy bắt đầu với câu hỏi:
  • Là tập tin sử dụng hoặc liên quan đến dự án của bạn?
  • Các tệp có được sử dụng bởi những người khác trong cùng một nhóm với bạn không?
Tệp này được tạo bởi một quá trình khác?

GitIgnore là gì? GitIgnore mang lại những lợi ích gì? 20

Nếu các tệp không được dự án hoặc các thành viên khác trong nhóm của bạn sử dụng, các tệp này có thể bị bỏ qua. Trong trường hợp tệp được tạo bởi một quy trình khác, bạn có thể bao gồm GitIgnore.

  • Một số tệp phổ biến cần bỏ qua Tệp hệ điều hành:
  • ở định dạng Văn bản do ObjectScript phát triển.Tệp ứng dụng
  • : ở định dạng XML do Microsoft phát triển.Tệp ngôn ngữ
  • : dưới định dạng N / A do N / A phát triển.Người quản lý gói
  • : là một bộ phần mềm dùng để quản lý và tự động hóa việc cài đặt, nâng cấp và gỡ bỏ phần mềm.Thông tin xác thực
  • : Hệ thống thông tin cho phép người dùng truy cập bằng cách đăng nhập tài khoản của mình để dễ dàng hơn trong việc quản lý thông tin và các tài nguyên khác.Đồ tạo tác

: là bất cứ thứ gì được tạo ra để có thể phát triển một phần mềm.

Trong một số trường hợp, GitIgnore có thể là giải pháp tốt nhất để giúp bạn giải quyết các vấn đề về tệp trong dự án của mình. Có thể, khi không cần dùng đến, bạn sẽ không thấy được lợi ích của GitIgnore, nhưng chúng rất có ý nghĩa đối với một số nhà phát triển khác. Hy vọng bài viết có thể mang đến cho bạn những kiến ​​thức bổ ích về GitIgnore.

Một số câu hỏi thường gặp liên quan đến GitIgnore

Có thể bao gồm các tệp bảo mật hoặc khóa API trong GitIgnore không?

VÂNG. Để bảo mật, khóa bảo mật và tệp khóa API được thêm vào GitIgnore, nghĩa là chúng đều được lưu trữ trong thư mục. Mọi cam kết đều được ghi lại trong lịch sử thỏa thuận repo của Git. Nếu một khóa được gửi, ngay cả khi đã gỡ xuống hồ sơ của khóa đó.

GitIgnore ảnh hưởng đến dự án như thế nào?

GitIgnore có mức độ ảnh hưởng đến mọi tệp và nhánh thư mục trong một dự án. Một dự án trung bình thường chỉ sử dụng một GitIgnore để hoạt động. Đối với các dự án lớn, bạn có thể tách GitIgnore thành từng thư mục để quản lý.

Làm thế nào để theo dõi các tệp trong Git?

  • Khi bạn đang làm việc với các tệp, GitIgnore sẽ cho Git biết những tệp nào cần bỏ qua khi cam kết với dự án. Git sẽ xem xét mọi tệp và phân loại nó trong 3 trường hợp. Không theo dõi:
  • Tệp thuộc về các thay đổi không được đánh dấu hoặc đã cam kết. Theo dõi:
  • Tệp thuộc về những thay đổi đã được tổ chức hoặc cam kết. Mặc kệ:

Các tệp trong trường hợp mà Git yêu cầu bỏ qua.

Tại sao lại bỏ qua các tệp trong Git?

  • Có nhiều lý do chủ quan và khách quan dẫn đến việc xóa file, một số lý do phổ biến nhất như.
  • Các tệp chứa dữ liệu nhạy cảm.
  • Các tệp dành riêng cho hệ thống và không cần phải tồn tại trên các bản sao của máy.

Việc loại trừ một số tệp là không cần thiết để duy trì các quy tắc và bảo mật của hệ thống.

  • CÔNG TY CỔ PHẦN TẬP ĐOÀN TINO
    Trụ sở chính: L17-11, Lầu 17, Tòa nhà Vincom Center, Số 72 Lê Thánh Tôn, P. Bến Nghé, Q.1, TP.
  • VPĐD: 42 Trần Phú, P.4, Q.5, TP.HCM
    Điện thoại: 0364 333 333
  • Tổng đài miễn cước: 1800 6734
  • Email: sales@tino.org
Trang web: www.tino.org

Xem thêm nhiều bài viết về : Kiến Thức Cơ Bản

Nguồn: GitIgnore là gì? GitIgnore mang lại những lợi ích gì?

Nhận xét

Bài đăng phổ biến từ blog này

3 Cách để kiếm tiền từ blog WordPress

Google AdSense bỏ giới hạn số lượng quảng cáo trên mỗi trang

Toàn tập danh sách liên kết đơn trong C++