những gì nên có trong tệp .gitignore cho một dự án java netbeans?


90

Nội dung của tệp .gitignore đối với một dự án java trong netbeans?


1
Tùy thuộc vào hệ điều hành mà bạn đang phát triển, hầu hết các nhà phát triển Mac đều bao gồm .DS_Storevì đ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 đối với ứng dụng của bạn.
Greg K

Tôi đang phát triển trong cửa sổ. Trong câu hỏi, tôi muốn nói đến một số tệp nhất định như .DS_Store. Ví dụ: tôi có nên đưa thư mục xây dựng vào .gitignore không?
thuaso

3
Đây ít nhiều là bản sao của stackoverflow.com/questions/1267403/…
David J.

Câu trả lời:


65

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

Nếu bạn tạo một dự án sử dụng Ant làm cơ chế xây dựng, bạn thường kết thúc với một cây thư mục giố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 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 có thể nên đặt các thư mục build, dist và nbproject / private (và các thư mục con của chúng) vào .gitignore của bạn.

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


4
Một câu hỏi tương tự đã được hỏi một năm trước đó và câu trả lời tốt nhất chỉ đến Bài báo trên cơ sở kiến ​​thức NetBeans đưa ra câu trả lời tương tự như bạn đã làm.
David J.

2
@DavidJames - phá vỡ liên kết tại
Jason S

@JasonS Liên kết đầu tiên của tôi vẫn còn hiệu lực; Tôi không thể chỉnh sửa liên kết thứ hai. Thêm ngữ cảnh tại Có cách nào để sửa các 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?
David J.

73
# 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 một lưu ý rằng điều này gắn chặt chẽ với NetBeans .gitignore lưu trữ trên GitHub: github.com/github/gitignore/blob/master/Global/...
Steven

1
GitHub's NetBeans .gitignore cho phép các tệp .jar được đưa vào repo. Tôi nghi ngờ đó là phương pháp hay nhất, nhưng nó giúp cuộc sống của tôi dễ dàng hơn.
Neal Ehardt

... và, giống như GitHub .gitignorecho NetBeans, nó không hoàn toàn chính xác. Xem stackoverflow.com/q/24139478/421049 .
Garret Wilson

3
Thêm dấu gạch chéo ở đầu vào tên của các thư mục được bỏ qua. Ví dụ: "/ build /" thay vì chỉ "build /". Ngược lại, nếu bạn có một thư mục được gọi là "xây dựng" ở đâu đó trong cấu trúc thư mục, nó sẽ bị bỏ qua, đó có thể không phải là điều bạn muốn.
Duncan

1

Không nên có tệp dành riêng cho NetBeans trong của bạn .gitignore. Các .gitignoretập tin là dự án cụ thể nhưng chia sẻ giữa các nhà phát triển, IOW chỉ nên là những thứ trong đó mà là chung 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 như biên tập viên) và đó là cụ thể cho dự án.

Nếu có một số tệp mà bạn muốn bỏ qua dựa trên môi trường cụ thể của mình (như Windows Thumbs.dbdesktoptệp hoặc nbprojectthư mục NeBeans ), bạn nên thực hiện điều đó trong danh sách bỏ qua chung của mình, không phải trong dự án cụ thể .gitignore - nếu chỉ vì sau đó bạn không không cần phải 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 vừa cụ thể cho môi trường của bạn vừa cụ thể cho dự án, hãy đặt chúng vào kho lưu trữ đó .git/info/exclude.


2
Tại sao sử dụng .git / info /lude thay vì các dự án .gitignore? Lợi ích / nhược điểm nếu đặt trong .gitignore là gì?
Andrew Burns

@Andrew Burns Sự khác biệt giữa .gitignore và .git / info / ignore là cái trước sẽ được tạo phiên bản (git theo dõi thay đổi), trong khi cái sau 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 liên kết với phiên bản. Tôi thích các tệp .gitignore mẫu ở đây .
Ivin

2
Tôi không đồng ý; nó không ảnh hưởng đến 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 phải được tạo tự động) hoặc ngược lại. Nó thực sự có thể hữu ích 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.)
David J.

1
không nên bỏ qua nb-configuration.xml. Nó được dùng để chia sẻ giữa các nhà phát triển.
DejanLekic
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.