2010-04-06 23 views
80

Nội dung của tệp .gitignore cho dự án java trong netbeans là gì?những gì nên được trong tập tin .gitignore cho một dự án java netbeans?

+0

Tùy thuộc vào hệ điều hành bạn đang phát triển, hầu hết các nhà phát triển Mac bao gồm '.DS_Store' vì điều này được tạo bởi OS X, trong hầu hết các thư mục và không cần thiết cho ứng dụng của bạn. –

+0

Tôi đang phát triển trong các cửa sổ. Trong câu hỏi tôi có nghĩa là một số tập tin nhất định như. DS_Store. Ví dụ tôi nên bao gồm xây dựng thư mục trong .gitignore? – thuaso

+2

Đây là, nhiều hơn hoặc ít hơn, một bản sao của http://stackoverflow.com/questions/1267403/which-netbeans-projects-files-should-go-into-source-control –

Trả lời

57

Có một số tệp hợp lý mà bạn có thể không cần phải cam kết vào git, vì chúng được tạo, được tạo bởi NB hoặc chứa thông tin cụ thể về môi trường.

Nếu bạn tạo một dự án có sử dụng Ant như cơ chế xây dựng, bạn thường kết thúc với một cây thư mục trông như thế này ...

project-root-directory/ 
+ nbproject/ 
    build-impl.xml 
    + private/ 
    + project.properties 
    + project.xml 
+ src/ 
+ test/ 
+ build.xml 

Sau khi bạn làm một xây dựng .. sẽ có một vài thư mục bổ sung

project-root-directory/ 
+ build/ 
+ dist/ 
+ nbproject/ 
    build-impl.xml 
    + private/ 
    + project.properties 
    + project.xml 
+ src/ 
+ test/ 
+ build.xml 

Bạn nên đặt thư mục xây dựng, dist và nbproject/private (và con cái của họ) vào .gitignore của bạn.

Nếu bạn muốn rất tích cực về việc loại trừ tệp, bạn có thể xem xét việc loại trừ tất cả các tệp xuất hiện trong dự án EXCEPT dự án .properties và project.xml. Các tệp khác trong thư mục nbproject được tái tạo bởi NetBeans khi dự án được mở.

+3

[Một câu hỏi rất giống đã được hỏi một năm trước đó] (http://stackoverflow.com/questions/1267403/which-netbeans-projects-files-should-go-into-source-control/1267580#1267580) và câu trả lời hay nhất được chỉ ra cho [Bài viết Cơ sở tri thức NetBeans] (http://netbeans.org/kb/docs/java/import-eclipse.html#versioning) cung cấp câu trả lời tương tự như bạn đã làm. –

+0

@DavidJames - liên kết bị hỏng ngay bây giờ –

+0

@JasonS Liên kết đầu tiên của tôi vẫn hợp lệ; Tôi không thể chỉnh sửa liên kết thứ hai. Thêm bối cảnh tại [Có cách nào để sửa liên kết bị hỏng trong nhận xét không? Các mod có thể chỉnh sửa bình luận không?] (Http://meta.stackexchange.com/questions/135647/is-there-a-way-to-fix-broken-links-in-comments-can-the-mods-edit- ý kiến) –

1

Sẽ không có tệp cụ thể của NetBeans trong số .gitignore của bạn. Tệp .gitignore là dự án cụ thể nhưng được chia sẻ giữa các nhà phát triển, IOW chỉ có những thứ trong đó là phổ biến cho tất cả các nhà phát triển làm việc với mã (bao gồm cả những người sử dụng OSX, Linux thay vì Windows và Eclipse, IntelliJ hoặc Notepad người chỉnh sửa) và đó là cụ thể cho dự án.

Nếu có một số tập tin mà bạn muốn bỏ qua dựa trên môi trường cụ thể của bạn (như ví dụ như Windows Thumbs.dbdesktop file hoặc NeBeans nbproject thư mục), bạn nên làm điều đó trong bỏ qua danh sách toàn cầu của bạn, không phải trong dự án cụ thể .gitignore   – nếu chỉ vì sau đó bạn không cần thêm chúng vào từng dự án riêng lẻ của bạn.

Nếu các tệp bạn muốn bỏ qua đều cụ thể cho môi trường của bạn và cụ thể cho dự án, hãy đặt chúng vào trong kho của .git/info/exclude.

+2

Tại sao sử dụng .git/info/exclude thay vì các dự án .gitignore? Benifit/downside nếu được đặt trong .gitignore là gì? –

+2

Tôi không đồng ý; nó không làm tổn thương người dùng IntelliJ nếu người dùng Eclipse kiểm tra các tệp dự án thích hợp (ví dụ: không được tạo tự động) hoặc ngược lại. Nó thực sự có thể giúp khi một thành viên của nhóm dự án cần làm việc với IDE khác đó. (Điều này có thể xảy ra trong quá trình khắc phục sự cố hoặc lập trình ghép nối.) –

+0

@Andrew Burns Sự khác biệt giữa .gitignore và .git/info/exclude là phiên bản cũ sẽ được phiên bản (git track changes), trong khi phiên bản thứ hai thì không. Tôi sử dụng .gitignore vì đôi khi tôi thay đổi những gì bị bỏ qua và muốn có liên quan đến phiên bản. Tôi thích t [mẫu .gitignore tệp tại đây] (http://sujee.net/tech/articles/gitignore/). Không nên bỏ qua – Ivin

66
# NetBeans specifiC# 
nbproject/private/ 
build/ 
nbbuild/ 
dist/ 
nbdist/ 
nbactions.xml 
nb-configuration.xml 

# Class Files # 
*.class 

# Package Files # 
*.jar 
*.war 
*.ear 
+1

Chỉ cần lưu ý rằng điều này liên kết chặt chẽ với NetBeans .gitignore được lưu trữ trên GitHub: https://github.com/github/gitignore/blob/master/Global/NetBeans.gitignore – Steven

+1

NetBeans của GitHub .gitignore cho phép các tệp .jar được bao gồm trong repo. Tôi nghi ngờ đó là thực hành tốt nhất, nhưng nó làm cho cuộc sống của tôi dễ dàng hơn. –

+0

... và, giống như GitHub '.gitignore' cho NetBeans, nó không hoàn toàn chính xác. Xem http://stackoverflow.com/q/24139478/421049. –

Các vấn đề liên quan