Tôi đã thấy các câu hỏi tương tự (1, 2 và 3), nhưng tôi không nhận được giải pháp thích hợp từ chúng.Bỏ qua tất cả các tập tin một cách đệ quy dưới một thư mục cụ thể ngoại trừ một loại tệp cụ thể
Tôi cần bỏ qua tất cả các tệp trong một thư mục cụ thể ngoại trừ một loại tệp cụ thể. Thư mục là thư mục phụ cho đường dẫn gốc. Hãy để tôi đặt tên cho thư mục Resources
. Vì tôi không muốn làm phức tạp mọi thứ, hãy để tôi bỏ qua các tệp trong tất cả các thư mục có tên là Resources
ở bất cứ đâu.
Đây là giải pháp phổ biến nhất (trong tất cả các câu hỏi trùng lặp)
# Ignore everything
*
# Don't ignore directories, so we can recurse into them
!*/
# Don't ignore .gitignore
!.gitignore
# Now exclude our type
!*.foo
Vấn đề với giải pháp này được rằng nó ngừng theo dõi mới được thêm vào các file (kể từ *
bỏ qua tất cả các file). Tôi không muốn tiếp tục loại trừ từng loại tệp. Tôi muốn có hành vi bình thường nếu có bất kỳ tập tin mới nào được thêm vào, git status
sẽ hiển thị nó.
Cuối cùng tôi đã nhận được giải pháp here. Giải pháp là thêm một tệp .gitignore
khác trong thư mục Resources
. Điều này hoạt động chính xác.
Tôi có thể đạt được điều tương tự với một tệp bỏ qua không? Tôi thấy có nhiều tập tin bỏ qua trong các thư mục khác nhau một chút clunky.
Đây là những gì tôi đang cố gắng để đạt được:
# Ignore everything under Resources folder, not elsewhere
Resources
# Don't ignore directories, so we can recurse into them
!*Resources/
# Now exclude our type
!*.foo
Nhưng điều này sẽ cho kết quả ngược lại. Nó bỏ qua các loại *.foo
và theo dõi các tệp khác.
Điều này làm việc cho tôi, tinh chỉnh nhẹ, tôi chỉ cần loại bỏ các thư mục và mọi thứ bên dưới chúng nên tôi đã làm: 'DirectoryName1/** DirectoryName1/**/*' cho mỗi người trong số họ. xóa tất cả các loại tệp. –