Tôi nghĩ rằng có những tình huống bỏ qua .gitignore là rất hữu ích. Chẳng hạn, khi bạn có nhiều nhóm hoặc một nhóm lớn làm việc trên cùng một cơ sở mã. Trong trường hợp đó, bạn cần phải có một số quy ước nhất định, một trong những quy ước đó liên quan đến những gì bị bỏ qua tại repo git. Nó thường là về việc bỏ qua các tệp và thư mục được tạo bởi IDE hoặc OS, một số nhật ký được tạo, v.v.
Tuy nhiên, có một lực lượng đang có xu hướng giới thiệu các thay đổi không thông thường đối với .gitignore
tệp. Tập .gitignore
tin có thể được thay đổi thêm bởi người vô trách nhiệm, do nhầm lẫn, bởi một công cụ được sử dụng hoặc trong một số trường hợp khác.
Để có một lực lượng chống lại điều này, chúng ta có thể làm như sau:
- .Gitignore ban đầu sẽ phản ánh quy ước trong nhóm,
- Sau khi được đẩy, .gitignore phải được bảo mật bằng cách thêm mục nhập .gitignore và đẩy thay đổi đó một lần nữa.
.gitignore
Tập tin được " niêm phong " theo cách này.
Tập tin " niêm phong " .gitignore
có thể được thay đổi, chỉ cục bộ, mà không truyền bá sự thay đổi đó đến các thành viên khác trong nhóm. Tuy nhiên, nếu một thay đổi được đồng ý rộng rãi trong toàn bộ (các) nhóm thì có thể "hủy niêm yết" nó, thay đổi và thay vì "đóng dấu" lại. Điều đó không thể được thực hiện do nhầm lẫn, chỉ có chủ ý.
Đáng buồn thay, bạn không thể được bảo vệ 100% khỏi sự ngu ngốc, nhưng bằng cách này bạn đã làm mọi thứ có thể để ngăn chặn những điều ngu ngốc xảy ra.
Nếu bạn có một đội ngũ tương đối nhỏ với các chuyên gia rất giỏi, điều này sẽ không quan trọng, nhưng ngay cả những người đó cũng sẽ đánh giá cao việc có một điều ít phải lo lắng hơn.
Sử dụng .git/info/exclude
là tuyệt vời khi bạn không thể làm bất cứ điều gì về cài đặt cơ sở hạ tầng, chỉ cần che dấu ** của riêng bạn để không phạm sai lầm.
Từ quan điểm của những gì là đúng và những gì sai, tôi đang bỏ phiếu để có mục nhập .gitignore bên trong .gitignore
tệp, cho mọi người tự do làm tại địa phương bất cứ điều gì họ muốn, nhưng không xâm chiếm người khác.
git add self && git commit -m "-1 for reverting existential depression" && git remote rm HEAD