Tập tin .gitignore thuộc về đâu?


357

Tệp .gitignore có thuộc cấu trúc thư mục .git ở đâu đó hoặc trong các tệp nguồn chính không?


20
Bạn có thể có một .gitignore trong mỗi thư mục của dự án của bạn. Tuy nhiên, cách tốt nhất là có một tệp .gitignore trên thư mục gốc của dự án và đặt tất cả các tệp mà bạn muốn bỏ qua trong đó.
Pavan Gupta

Tôi -1 bạn đã chấp nhận câu trả lời sai.
Aaron Hall

@AaronHall - đã chuyển đổi .... đã không xem lại điều này trong một thời gian .....
mishaF

Câu trả lời:


428

Đặt .gitignore trong thư mục làm việc . Nó không hoạt động nếu bạn đặt nó trong thư mục .git (repository).

$ ls -1d .git*
.git
.gitignore

20
Đây là câu trả lời thực tế. Tốt cho bạn hiểu câu hỏi :)
Mario SE

15
Đó là một câu trả lời mơ hồ IMO. Trường hợp trong thư mục làm việc? Trong gốc của nó? Bất cứ nơi nào?
Carles Alcolea

6
@CarlesAlcolea, Câu trả lời cho biết bạn có thể đặt .gitignoretệp ở bất kỳ đâu trong thư mục làm việc, tức là trong bất kỳ thư mục nào mà mã của bạn chiếm ưu thế. Đã nói rằng, thực hành tốt nhất sẽ là đặt các .gitignoretập tin trong thư mục gốc. Điều này có nghĩa là một .gitignoretập tin cho một toàn bộ repo. Điều này làm cho việc quản lý các tập tin bị bỏ qua hiệu quả hơn.
Andy

10
Tôi cần một số giải thích thêm. Điều gì xảy ra nếu .gitignore được đặt trong thư mục con? Có phải nó chỉ điều chỉnh thư mục con và các chi nhánh của nó? Có thể có nhiều .gitignore trong các thư mục con khác nhau không? Sẽ có .gitignores với các quy tắc khác nhau trong thư mục con xếp tầng trên .gitignores của thư mục parrent?
Behrooz Karjoo

72

Như các câu trả lời khác đã nêu, bạn có thể đặt .gitignoretrong bất kỳ thư mục nào trong kho Git. Tuy nhiên, nếu bạn cần có phiên bản riêng tư .gitignore, bạn có thể thêm các quy tắc vào .git/info/excludetệp.


4
Ngoài ra, core.excludesfile(xem git-config (1) ) để chỉ định một tệp chứa các mẫu loại trừ cá nhân của bạn (mẫu tạm thời của tệp ưa thích của bạn, mẫu đặt tên / sao lưu của trình soạn thảo, v.v.). Theo đó, tránh đặt các mẫu cá nhân của Cameron vào .gitignoretập tin được theo dõi .
Chris Johnsen

2
Phần riêng tư của câu trả lời này rất hữu ích, vì tôi có một vài sửa đổi cho dự án không thuộc về .gitignoretệp đăng ký.
OregonGhost

57

Bạn có thể đặt .gitignore trong bất kỳ thư mục nào trong git.

Nó thường được sử dụng như một tệp giữ chỗ trong các thư mục, vì các thư mục thường không được theo dõi bởi git.


7
Tại sao bạn được phép đặt nó ở bất cứ đâu? Làm thế nào mà git không bị nhầm lẫn?
Charlie Parker

3
Vì vậy, tập tin .gitignore có thể đi vào thư mục .git, phải không? (Đó là câu hỏi ban đầu). Mục đích nào sẽ phục vụ?
thịt xông khói


8

Nếu bạn muốn làm điều đó trên toàn cầu, bạn có thể sử dụng đường dẫn mặc định mà git sẽ tìm kiếm. Chỉ cần đặt nó bên trong một tệp có tên "bỏ qua" trong đường dẫn~/.config/git

(đường dẫn đầy đủ cho tệp của bạn là ~/.config/git/ignore:)


3

Bạn cũng có thể tìm thấy một .gitignore toàn cầu trực tiếp tại đường dẫn ~ nếu bạn chưa tạo nó trong dự án thư mục của mình. Tập tin này được tính đến bởi tất cả các dự án .git của bạn.


0

Ngoài ra, nếu bạn tạo một tài khoản mới trên Github, bạn sẽ có tùy chọn để thêm .gitignore và nó sẽ được thiết lập tự động ở bên phải / vị trí chuẩn của nơi làm việc của bạn. Bạn không cần phải thêm bất cứ điều gì vào lúc đầu, chỉ cần thay đổi nội dung bất cứ lúc nào bạn muốn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.