2016-03-11 2 views
6

Мы используем Gradle Wrapper для всех наших проектов, но один из наших инструментов (IntelliJ IDEA) часто повторно запускает задачу оболочки, которая меняет первую строку - комментарий о когда файл был сгенерирован - каждый раз, когда он запускается. Это изменение имеет тенденцию к добавлению к запросу запросов, что означает высокий потенциал для ненужных конфликтов слияния.Предотвращение изменения gradle-wrapper.properties от изменения времени

Правильное решение состоит в том, чтобы все разработчики никогда не проверяли файл, если он фактически не изменился значимым образом, но разработчики (включая меня) могут быть поспешными и забывчивыми, поэтому файл регулярно появляется в запросах на загрузку.

У меня было несколько идей для решения этой проблемы, но я не могу решить ни одного из них.

  1. Сделать Git игнорировать первую строку gradle-wrapper.properties как this, чувствует себя громоздким и должно быть сделано каждым разработчиком, так как это местный.

  2. Добавить хвост в задачу оболочки градиента, которая удаляет первую строку gradle-wrapper.properties, чувствует себя немного хакерским.

  3. Как-то заставить IDEA не запускать задачу обертки автоматически каждый раз, когда мы синхронизируем проект, не знаю, как это сделать.

Я склоняюсь к 2. прямо сейчас, но я хотел бы услышать, есть ли у кого-нибудь другие идеи.

+2

Как часто вы выполняете задачу обложки Gradle и почему? Его нужно запускать только в том случае, если вы хотите обновить версию установленной установки Gradle. Я никогда не видел, чтобы IntelliJ выполнял это без явного запуска задачи оболочки. – cjstehno

+0

IDEA запускает задачу обертки перед синхронизацией проекта, который мы должны делать каждый раз, когда мы обновляем или добавляем зависимости (что происходит часто, поскольку мы используем внутренние библиотеки для совместного использования моделей данных и некоторого кода полезности). IDEA настроен на использование обертки при импорте проекта в качестве проекта Gradle. – Raniz

+0

Интересно, является ли это параметром при первом открытии проекта - когда я впервые открываю проект Gradle, я использую File> Open, а затем принимаю значения по умолчанию - возможно, вы меняете один из них. Мне нужно будет открыть новый проект и посмотреть, что это за варианты. Что описывается, это не поведение по умолчанию в целом. Я использую Git + Gradle + Intellij и никогда не сталкивался с этим. – cjstehno

ответ

7

кажется, что выбор Использовать по умолчанию Gradle обертки правильный вариант выбора при импорте проекта Gradle и что Использовать настраиваемый Gradle обертки (Gradle обертку настройки в сценарии, работает с Gradle 1.7 или более поздней версией) является который заставляет IDEA повторно запускать задачу-оболочку все время.

+1

Сохраняется ли это? Я не могу исправить проблему, просто выбрав по умолчанию Gradle wrapper при импорте. Intellij обновляет время в gradle-wrapper.properties каждый раз, когда я запускаю оболочку градиента, даже если выбрана стандартная оболочка. – bengro

+0

Я все еще так делаю в IDEA 2016.3 – Raniz

+0

Хорошо, хорошо знать, спасибо. ./gradlew wrapper также генерирует даты, поэтому это может быть проблемой градиента. Я продолжу расследование. – bengro

Смежные вопросы