що має бути у файлі .gitignore для Java-проекту netbeans?


90

Яким повинен бути вміст файлу .gitignore для Java-проекту в netbeans?


1
Залежно від ОС, над якою ви розробляєтесь, більшість розробників Mac включають, .DS_Storeоскільки вона генерується OS X у більшості каталогів і є зайвою для вашого додатка.
Greg K

Я розробляю у вікна. Під питанням я маю на увазі деякі певні файли, такі як .DS_Store. Наприклад, я повинен включити папку побудови в .gitignore?
thuaso

3
Це, більш-менш, копія stackoverflow.com/questions/1267403/…
Девід Дж.

Відповіді:


65

Існує чимала кількість файлів, які вам, мабуть, не потрібно перетворювати в git, оскільки вони побудовані, генеруються NB або містять інформацію, що стосується оточення.

Якщо ви створюєте проект, який використовує Ant як механізм побудови, зазвичай ви отримуєте дерево каталогів, яке виглядає так ...

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

Після того, як ви зробите збірку .. буде пара додаткових каталогів

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

Ймовірно, вам слід розмістити каталоги build, dist та nbproject / private (та їхніх дітей) у своєму .gitignore.

Якщо ви хочете бути дуже агресивними щодо виключення файлів, ви можете розглянути можливість виключення всіх файлів, які відображаються в nbproject EXCEPT project.properties і project.xml. Інші файли в каталозі nbproject відтворюються NetBeans при відкритті проекту.


4
Дуже подібне питання було задано роком раніше, і найкраща відповідь вказала на статтю бази знань NetBeans, яка дає подібну відповідь, як і ви.
David J.

2
@DavidJames - недійсне посилання зараз
Jason S

@JasonS Моє перше посилання все ще діє; Я не можу редагувати друге посилання. Більше контексту на сторінці Чи є спосіб виправити непрацюючі посилання в коментарях? Чи можуть моди редагувати коментарі?
Девід Дж.,

73
# NetBeans specific #
nbproject/private/
build/
nbbuild/
dist/
nbdist/
nbactions.xml
nb-configuration.xml

# Class Files #
*.class

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

1
Тільки примітка, що це тісно узгоджується із .gitignore NetBeans, розміщеним на GitHub: github.com/github/gitignore/blob/master/Global/…
Стівен

1
GitHub NetBeans .gitignore дозволяє включати файли .jar у репо. Я сумніваюся, що це найкраща практика, але це полегшує моє життя.
Ніл Ехардт,

... і, як і GitHub .gitignoreдля NetBeans, це не зовсім правильно. Див. Stackoverflow.com/q/24139478/421049 .
Гаррет Вілсон,

3
Додайте провісні скісні риски до назв каталогів, які слід ігнорувати. Наприклад: "/ build /" замість просто "build /". В іншому випадку, якщо у вас є каталог із назвою "build" десь у структурі каталогів, він буде проігнорований, що, мабуть, не те, що ви хочете.
Duncan

1

У вашому файлі не повинно бути файлів, пов'язаних із NetBeans .gitignore. .gitignoreФайл конкретного проекту , але розподіляється між розробниками, IOW повинна бути тільки речі там, які поширені для всіх розробників , які працюють з кодом ( в тому числі ті , які використовують OSX, Linux замість Windows , і Eclipse, IntelliJ або Блокнот в якості редакторів) і які є специфічними для проекту.

Якщо є деякі файли, які ви хотіли б ігнорувати, виходячи з вашого конкретного середовища (наприклад, Windows Thumbs.db та desktopфайли або nbprojectкаталоги NeBeans ), ви повинні це зробити у своєму глобальному списку ігнорувань, а не в конкретному проекті .gitignore - хоча б тому, що тоді ви цього не робите ' Не потрібно додавати їх до кожного вашого проекту окремо.

Якщо файли, які ви хочете проігнорувати, стосуються як вашого оточення, так і проекту, помістіть їх у це сховище .git/info/exclude.


2
Навіщо використовувати .git / info / exclude, а не проекти .gitignore? Яка користь / мінус, якщо ввести .gitignore?
Ендрю Бернс,

@Andrew Burns Різниця між .gitignore та .git / info / exclude полягає в тому, що перший буде версіями (git відстежує зміни), а другий - ні. Я використовую .gitignore, оскільки іноді змінюю те, що ігнорується, і хочу, щоб це було пов’язано з версією. Мені сподобався т зразок файлів .gitignore тут .
Івін

2
Я не погоджуюсь; це не зашкодить користувачеві IntelliJ, якщо користувач Eclipse перевіряє відповідні (наприклад, не автоматично згенеровані) файли проекту, або навпаки. Це насправді може допомогти, коли одному з членів команди проекту потрібно працювати з іншою IDE. (Це може статися під час усунення несправностей або програмування пар.)
Девід Дж.,

1
nb-configuration.xml не слід ігнорувати. Він призначений для спільного використання серед розробників.
DejanLekic
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.