Слияния на ИДЕЕ IntelliJ.IPR и.IWS файлах

Вариант ответа @tallgirltaadaa, нарисуйте свою кнопку в форме каретки:

var a = $('.MyCarouselContainer').slick({
    prevArrow: '<canvas class="prevArrowCanvas a-left control-c prev slick-prev" width="15" height="50"></canvas>',
    nextArrow: '<canvas class="nextArrowCanvas a-right control-c next slick-next" width="15" height="50"></canvas>'
});

function drawNextPreviousArrows(strokeColor) {
    var c = $(".prevArrowCanvas")[0];
    var ctx = c.getContext("2d");
    ctx.clearRect(0, 0, c.width, c.height);
    ctx.moveTo(15, 0);
    ctx.lineTo(0, 25);
    ctx.lineTo(15, 50);
    ctx.lineWidth = 2;
    ctx.strokeStyle = strokeColor;
    ctx.stroke();
    var c = $(".nextArrowCanvas")[0];
    var ctx = c.getContext("2d");
    ctx.clearRect(0, 0, c.width, c.height);
    ctx.moveTo(0, 0);
    ctx.lineTo(15, 25);
    ctx.lineTo(0, 50);
    ctx.lineWidth = 2;
    ctx.strokeStyle = strokeColor;
    ctx.stroke();
}
drawNextPreviousArrows("#cccccc");

, затем добавьте css

.slick-prev, .slick-next 
    height: 50px;s
}
25
задан ripper234 16 June 2009 в 09:49
поделиться

4 ответа

Одно из решений - не помещать ваши проекты IntelliJ в систему контроля версий. Это означает, что их легко воссоздать.

Вы можете указать Subversion, какие файлы следует игнорировать. Добавьте ваши файлы IntelliJ в этот список.

«... даже без какой-либо работы над проектом ...» - это предполагает, что вы часто открываете IntelliJ, не выполняя какой-либо полезной работы над проектом. Может быть, это настоящая проблема. Я не понимаю, почему вы открыли IDE, не сделав ЧТО-ТО, что стоило бы проверить. И какова стоимость растущего номера ревизии? Маленький, на мой взгляд.

Итак, теперь я передумал. Зарегистрируйтесь в файлах проекта IntelliJ и не беспокойтесь о росте номеров версий. Они вам недорого стоят.

0
ответ дан 28 November 2019 в 21:06
поделиться

«Мы храним наши файлы IntelliJ .IPR и .IWS в нашем исходном элементе управления, но они продолжают изменяться IntelliJ, просто открывая их, даже если над проектом не ведется работа»

.IWS-файл определенно является файлом для каждого разработчика, поэтому он не должен находиться в системе контроля версий.

Что касается файла .IPR в одном из недавних проектов, мы изначально пытались довести версию этого файла до концептуального подхода, как если бы это было с проектом .Net и файлом VS.Net .SLN. Нашей целью было заставить разработчика работать на чистом ПК в течение 15 минут, включая время, необходимое для установки зависимого программного обеспечения, такого как IDE или локальная база данных. В конце концов, у нас было немного времени, чтобы настроить локальную конфигурацию, как показано ниже.

Проблема в том, что файл .IPR хранит больше настроек, чем файл .sln -eg settings для отдельных плагинов. Таким образом, основная причина перезаписи заключается в том, что если разработчик с другой конфигурацией плагина открывает файл IPR, в файл записываются некоторые настройки по умолчанию для плагина. Мы чувствовали, что разработчикам не следует ограничивать себя определенным супернабором плагинов (только минимальной конфигурацией).

Мы решили проблему (хотя и не полностью) путем переключения на формат папки .idea. Это берет содержимое файла .IPR и разделяет многие узлы на отдельные файлы и папки в подпапке .idea. Отсюда мы смогли исключить многие часто записываемые в файлы файлы из системы контроля версий. Мы исключили следующие файлы:

  • workspace.xml
  • dataSources.xml
  • sqlDataSources.xml
  • dynamic.xml

Некоторые файлы, которые мы ' Мне хотелось бы оставить IntelliJ в покое (хотя вина также могут лежать на разработчиках плагинов, а не только на Jetbrains):

  • projectCodeStyle.xml (чтобы мы могли получить согласованное форматирование кода в проекте - опять же, это может быть перезаписано на основе локальный набор плагинов разработчика).
  • любой файл в папке runConfigurations. Настройка конфигураций запуска может занять много времени, особенно если у вас сложное приложение с множеством аспектов. Наиболее часто глупая вещь, которую можно изменить при простом открытии среды IDE или сборки, - это параметр «DEBUG_PORT» в RunnerSettings. Я считаю, что если он выделяется динамически, почему бы не иметь значение «Динамический»?
  • misc.xml. Этот файл также содержит конфигурацию плагина. Некоторые настройки удобны для публикации, а другие требуют персональной конфигурации. Например, плагин IvyIDEA помещает абсолютный путь к вашему конфигурационному файлу ivy.
  • Файлы модуля. В основном их оставляют в покое, но примером ненужной перезаписи является плагин IvyIDEA, помещающий в этот файл сведения о локальном расположении кэша плюща. Но опять же, это вина плагина, а не Jetbrains.

Надеюсь, это поможет.

Christian.

39
ответ дан 28 November 2019 в 21:06
поделиться

Не зная точно, что именно изменяется, на это немного сложно ответить уверенно, но я бы сказал:

  • Файлы IWS содержат информацию, описывающую, как устроена IDE разработчика для этого проекта (включая такие вещи, как история последних изменений, текущее состояние каждого окна редактора, какие прикрепляемые окна видны, а какие свернуты). Учитывая, что каждому разработчику должно быть разрешено организовывать свое рабочее пространство по своему усмотрению, эти не должны находиться в системе контроля версий.

  • Файлы IPR описывают структуру кода проекта - этим Я имею в виду, какие модули являются частью проекта, какие файлы build.xml использовать, где найти библиотеки для компиляции кода и т. Д. Это может находиться в системе контроля версий, но если вы позволите этим настройкам варьироваться от одной копии проекта разработчика к другой, вас ждет тяжелая поездка.

Если у вас есть компонент libraryTable внутри вашего файла IPR:

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

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

В противном случае:

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

В противном случае:

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

В противном случае:

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

4
ответ дан 28 November 2019 в 21:06
поделиться

Мы добавляем расширение к тем, которые проверены в системе контроля версий (.deleteme). Затем новые люди могут проверить проект, изменить расширения и начать. Если мы вносим изменения в конфигурацию, мы обновляем отмеченные файлы.

1
ответ дан 28 November 2019 в 21:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: