Tôi vừa tạo kho lưu trữ Github và tự hỏi tệp .gitignore
là gì. Tôi bắt đầu bằng cách không tạo ra một, nhưng thêm một do thực tế là hầu hết các kho có một. Tôi có cần phải có? Có thể/tôi chỉ cần bỏ qua nó, hoặc nó có một sử dụng? Tôi đã làm một số nghiên cứu về chủ đề này nhưng không thể tìm thấy một lời giải thích cụ thể.Chính xác là gì .gitignore?
Trả lời
.gitignore
nói git mà file (hoặc mô hình) nó nên bỏ qua. Nó thường được sử dụng để tránh các tập tin tạm thời từ thư mục làm việc của bạn không hữu ích cho các cộng tác viên khác, chẳng hạn như các sản phẩm biên dịch, các tệp tạm thời tạo ra IDE, v.v.
Bạn có thể tìm thấy chi tiết đầy đủ here.
Đó là danh sách các tệp bạn muốn git bỏ qua trong thư mục công việc của bạn.
Giả sử bạn đang sử dụng máy Mac và bạn có .DS_Store tệp trong tất cả các thư mục của bạn. Bạn muốn git bỏ qua chúng, vì vậy bạn thêm .DS_Store dưới dạng một dòng trong .gitignore. Và cứ thế.
Các tài liệu git sẽ nói với tất cả các bạn cần phải biết bạn: http://git-scm.com/docs/gitignore
Kịch bản '.DS_Store' của bạn cuối cùng đã cộng hưởng với tôi vì tôi đoán tôi không liên quan đến khái niệm này vì tôi chưa cần sử dụng nó trong một dự án. Cảm ơn bạn. Tôi đã sử dụng [this] (https://gist.github.com/octocat/9257657) làm điểm bắt đầu khi tôi sử dụng tất cả các hệ điều hành khác nhau, đặc biệt chú ý đến phần '# OS generated files #'. – phoenixlaef
Tôi biết tôi đến cuối chủ đề này, nhưng cảm ơn bạn @AndyLester! Tôi là một người mới khi nói đến lập trình và Github. Tôi tìm thấy nhiều câu trả lời được viết để giải quyết loại câu hỏi này được điền bằng các thuật ngữ mà người mới có thể không hiểu (tức là, các sản phẩm biên dịch, các tệp tạm thời IDE tạo .... những gì h @ ll là những thứ này!). Tuy nhiên, mô tả Mac của bạn là hoàn hảo trong sự đơn giản thanh lịch của nó! – Vesuccio
Khi bạn thực hiện cam kết, bạn không muốn vô tình bao gồm các tệp tạm thời hoặc tạo các thư mục cụ thể. Do đó, hãy sử dụng .gitignore
liệt kê các mục bạn muốn bỏ qua khi cam kết.
Ngoài ra, quan trọnggit status
là một trong những lệnh thường xuyên nhất được sử dụng mà bạn muốn git status
để ra khỏi danh sách các tập tin đã được sửa đổi.
Bạn muốn danh sách git status
sạch sẽ từ các tệp không mong muốn. Ví dụ, tôi đã thay đổi a.cpp, b.cpp, c.cpp, d.cpp & e.cpp
Tôi muốn tôi git status
để liệt kê như sau:
git status
a.cpp
b.cpp
c.cpp
d.cpp
e.cpp
Tôi không muốn git status
để ra khỏi danh sách các file đã thay đổi như thế này với các tập tin đối tượng trung gian & tập tin từ việc xây dựng thư mục
git status
a.cpp
b.cpp
c.cpp
d.cpp
e.cpp
.DS_Store
/build/program.o
/build/program.cmake
Do đó, để tự mình thoát khỏi git status
để liệt kê ra các tệp tạm thời trung gian & vô tình cam kết chúng vào repo, tôi nên tạo một .gitignore
mà mọi người đều làm. Tất cả những gì tôi cần làm để liệt kê ra các tệp tin & thư mục trong số .gitignore
mà tôi muốn loại trừ khỏi cam kết.
Sau đây là .gitignore
của tôi để tránh phạm file không cần thiết
/*.cmake
/*.DS_Store
/.user
/build
Có những tập tin mà bạn không muốn Git để kiểm tra vào.Git thấy mọi tệp trong bản sao làm việc của bạn là một trong ba điều sau:
- theo dõi - tệp đã được tổ chức trước đó hoặc đã cam kết;
- không được theo dõi - một tệp chưa được tổ chức hoặc cam kết; hoặc
- bị bỏ qua - một tệp mà Git đã được yêu cầu rõ ràng bỏ qua.
Tệp bị bỏ qua thường được tạo ra và các tệp được tạo bằng máy có thể được lấy từ nguồn lưu trữ của bạn hoặc không được cam kết. Một số ví dụ phổ biến là: cache
- phụ thuộc, chẳng hạn như nội dung của
/node_modules
hay/packages
- biên dịch mã, chẳng hạn như
.o
,.pyc
, và.class
file - thư mục build đầu ra, chẳng hạn như
/bin
,/out
, hoặc/target
- tệp được tạo vào thời gian chạy, chẳng hạn như
.log
,.lock
hoặc.tmp
- tập tin hệ thống ẩn, chẳng hạn như
.DS_Store
hoặcThumbs.db
- tập tin cấu hình IDE cá nhân, chẳng hạn như
.idea/workspace.xml
file Ignored được theo dõi trong một tập tin đặc biệt có tên .gitignore
đó được kiểm tra ở tại thư mục gốc của kho lưu trữ của bạn. Không có lệnh git ignore rõ ràng: thay vì tệp .gitignore
phải được chỉnh sửa và cam kết bằng tay khi bạn có các tệp mới mà bạn muốn bỏ qua. Các tệp .gitignore
chứa các mẫu khớp với tên tệp trong kho lưu trữ của bạn để xác định xem chúng có bị bỏ qua hay không. Đây là tệp sample.gitignore
. Để biết thêm chi tiết, hãy xem link
- 1. Chính xác là gì?
- 2. Container.DataItem chính xác là gì?
- 3. Chính xác PLINQ là gì?
- 4. Werkzeug chính xác là gì?
- 5. Sun.jnu.encoding chính xác là gì?
- 6. Heroku chính xác là gì?
- 7. Luồng chính xác là gì?
- 8. OWASP chính xác là gì?
- 9. Chính xác là gì .select() làm gì?
- 10. Điều gì! */Có nghĩa là trong .gitignore
- 11. Chính xác thì "xử lý" là gì?
- 12. Trình tải lớp chính xác là gì?
- 13. Chính xác thì khóa ngoại là gì?
- 14. Chính xác thời gian chạy.Gosched là gì?
- 15. Chính xác thì Apache Karaf là gì?
- 16. Chính xác __weakref__ bằng Python là gì?
- 17. Chính xác "đóng cửa" nghĩa là gì?
- 18. Chính xác thì luồng Java8 là gì?
- 19. EV_RECEIPT của kqueue chính xác là gì?
- 20. Chính xác thì Windows AppFabric là gì?
- 21. Chính xác thì Rake là gì?
- 22. Chính xác là gì `&: capitalize` trong Ruby?
- 23. PATH_INFO chính xác trong PHP là gì?
- 24. Chính xác Unicode Codepage 1200 là gì?
- 25. Cài đặt "config.assets.debug" chính xác là gì?
- 26. Chính xác thì cout/cin là gì?
- 27. Chính xác SQL Server 2005 là gì?
- 28. Lỗi chính xác này là gì?
- 29. số nguyên chính xác nhiều là gì?
- 30. Chính xác "Bảng điều khiển" là gì?
Nó cũng tốt cho mật khẩu và bảo mật quá – TheBlackBenzKid
Vì vậy, nếu bạn tạo một .gitignore trong một kho lưu trữ mới trên github.com, và sau đó làm một git init và git thêm *. * Trên máy tính cục bộ của bạn - chưa được kết nối. gitignore vì nó chưa được kết nối với kho lưu trữ đó - nó hoạt động như thế nào? Nó có hiệu lực khi tôi thực hiện một cam kết git? Hoặc là? – Xonatron
'_._ gitignore' được sử dụng để làm gì? là nó chỉ được sử dụng khi 'gitignore' nằm trong một chỉ mục phụ? –