Перейти к содержимому

Как отключить git в intellij idea

  • автор:

Как исключить папку .idea из git-репозитория в продуктах JetBrains

Вообще, я не знаю, почему по-умолчанию эти файлы оказываются в репозитории. Они явно не относятся к проекту, а являются служебными для IDE. Этим страдают все программы *Storm, которые я использовал. Включая мои любимые WebStrom и PhpStorm. Самое первое, что нужно сделать — это удалить уже залитые файлы (если таковые есть) из репозитория. Для этого используется самая обычная команда, выполняемая в папке перокта:

git rm -r --cached .idea
  • git — вызов утилиты git’а
  • rm — удаляет файлы из отслеживания
    • —cached — делает так, чтобы файлы небыли удалены физически с вашего диска. По-умолчанию git rm удаляет выбранный файл/каталог с диска
    • .idea — собственно файл или каталог, который вы хотите исключить

    Так же, не забывайте, что в корне проекта нужно создать файл .gitignore и добавить туда одну простую строчку:

    .idea/

    Это позволит в будущем не иметь проблем с этой папкой вообще.

    Возможно, будет интересно:

    • Чем открыть .psd файл в Linux верстальщику?
    • Грокаем алгоритмы. Краткая рецензия
    • Работа с cookie на чистом JavaScript
    • Определяем геолокацию пользователя на сайте. Два примера решения
    • Почему 2 больше 11 в JavaScript?
    • На каких хостингах в России ещё можно создать бота для Telegram?

    Как отключить «связь» с проектом в гитхаб/битбакет?

    Я склонировал к себе проект из битбакета, то есть, сейчас могу совершать какие либо действия с этим репозиторием, через консоль. Но допустим, я сменил проект, перешел в другую папочку, но уже хочу работать с абсолютно другим репозиторием, а ide(phpstorm) этого не понимает. Каким способом можно оборвать эту связь с репозиторием(насколько я понимаю, можно и через сам пхпшторм, так и через консоль)?

    • Вопрос задан более года назад
    • 2938 просмотров

    3 комментария

    Простой 3 комментария

    sergey-kuznetsov

    Сергей Кузнецов @sergey-kuznetsov Куратор тега Git

    Что значит «не понимает»?
    Если перейти в другую папку, то откроется другой проект с другим репозиторием. Тут не может возникнуть проблем. Либо вы неудачно сформулировали вопрос.

    Что значит, не понимает?

    Compolomus

    Дмитрий @Compolomus

    Отключить гит в шторме, работать только в консоли. Там обычно при создании файла вылетает табличка, типо добавить файл в гит, и галка, вот возможно оно помнит что у вас коммита не было. Ну а так git status в помощь

    Решения вопроса 1

    sergey-kuznetsov

    Сергей Кузнецов @sergey-kuznetsov Куратор тега Git
    Автоматизатор

    Отключить связь локальной и внешней ветки. Эта связь у каждой ветки своя.
    git branch —unset-upstream [локальная_ветка]

    Удалить псевдоним адреса внешнего репозитория от которого мы клонировались
    git remote remove origin

    625df2f6011dd404569686.png

    Ну либо через меню Git — Manage Remotes.

    В принципе достаточно последней команды.
    Если удалить origin, то очищаются и все связи между ветками, в которых упоминался origin.

    Как отключить проект в Intellij Idea от Git

    Написал некий код на Intellij Idea и экспортировал это на Git. Потом увидел, что экспортировалось даже то, что не нужно (проект один, но в разных packages совершенно разные программы), так как только учусь. Удалил этот репозиторий из Git, но до сих пор к нему подключена и при попытке закомитить пишет, что репозиторий не найден (что естественно). Так вот, как сделать, чтобы мой проект больше не был привязан к Version Control, так как это было изначально? В настройках не нашел подобной фичи

    Отслеживать
    задан 13 окт 2015 в 9:09
    531 3 3 золотых знака 5 5 серебряных знаков 13 13 бронзовых знаков

    3 ответа 3

    Сортировка: Сброс на вариант по умолчанию

    В настройках раздел Version Control .

    введите сюда описание изображения

    Кликните на директорию, с которой вы синхронизировали Git ( на скриншоте это D:\Projects\OutgoingManager) и нажмите на красный минус справа (он станет красным, когда выберете директорию).

    Отслеживать
    ответ дан 13 окт 2015 в 10:12
    36.8k 6 6 золотых знаков 48 48 серебряных знаков 125 125 бронзовых знаков

    В папке с проектом папка .idea. Заходишь туда, ишешь файл vcs.xml и удаляешь оттуда строчку с папкой, которую ты хочешь убрать.

    Подружим Git с Intellij IDEA

    Java-университет

    Подружим Git с Intellij IDEA - 1

    По сложившейся традиции, приветствую вас, будущие Senior Software Engineers. Сегодня поговорим о логическом продолжении моей статьи про Гит. Также я советую прочесть материал о стратегиях ветвления, который я опубликовал ранее. В статье про Гит я описал, как работать с ним в командной строке, а сегодня покажу, как сделать все это в Intellij IDEA. В начале своего пути как разработчика я пользовался именно командной строкой и думал, что мне незачем использовать UI для этого дела. Ведь все понятно и так… Но это было ровно до того момента, пока я не начал использовать Гит в Intellij IDEA… Хочу сказать сразу, что я буду описывать личный опыт работы. Есть несколько вариантов решения одних и тех же задач через Intellij IDEA, и если вы знаете, как сделать лучше то, что я опишу в статье — пишите в комментарии, обсудим.

    Необходимые вводные:

    1. Прочесть, повторить и понять статью про гит. Это поможет быть уверенным, что все уже настроено и готово к работе
    2. Установить Intellij IDEA.
    3. Выделить часик личного времени для полного усвоения.

    Клонируем проект локально

    Здесь есть два варианта.

    1. Если есть уже гитхаб аккаунт и хочется что-то потом запушить, лучше сделать форк проекта к себе и клонировать свою копию. Как сделать форк — я описывал в этой статье в главе пример the forking workflow.
    2. Клонировать с моего репозитория и проделать все локально без возможности все это дело запушить на сервер. Ведь это же будет мой репозиторий))

    Чтобы клонировать проект с гитхаба, нужно скопировать ссылку на проект и передать ее в IntelliJ IDEA:

    1. Копируем адрес проекта: Подружим Git с Intellij IDEA - 2
    2. Открываем Intellij IDEA и выбираем Get from Version Control: Подружим Git с Intellij IDEA - 3
    3. Копируем вставляем адрес на проект: Подружим Git с Intellij IDEA - 4
    4. Вам предложат создать Intellij IDEA проект. Принимаем предложение: Подружим Git с Intellij IDEA - 5
    5. Так как нет системы сборки, и это не входит в задачу статьи, выбираем Create project from existing sources: Подружим Git с Intellij IDEA - 6
    6. Далее будет такая картина маслом: Подружим Git с Intellij IDEA - 7С клонированием разобрались, теперь-то можно и оглянуться по сторонам.

    Первый взгляд на Intellij IDEA как на гит UI

    Присмотритесь еще раз внимательно на клонированный проект: уже там можно получить много информации о системе контроля версий. Первое — это Version Control панель в нижнем левом углу. В ней можно найти все локальные изменения и получить список коммитов (аналог git log). Перейдем в лекцию Log. Присутствует некая визуальная составляющая, которая помогает понять, как именно шел процесс разработки. Например, видно, что создавалась новая ветка с коммитом added header to txt, который после влился в мастер-ветку. Если нажать на коммит, в правом углу можно увидеть всю информацию о коммите: всех изменениях и его метаданных. Подружим Git с Intellij IDEA - 8Более того, можно посмотреть, какие были сделаны изменения. Тем более что там же был разрезолвлен конфликт. Это IDEA тоже отлично показывает. Если нажать два раза на файл, который был изменен за этот коммит, увидим, как резолвили кофликт: Подружим Git с Intellij IDEA - 9Заметно, что справа и слева были два варианта одного файла, который нужно было смержить в один. А посредине — результат, который в итоге получился. Когда в проекте множество веток, коммитов и пользователей, которые работают в проекте, необходимо поискать отдельно по ветке (branch), пользователю (user) и дате (date): Подружим Git с Intellij IDEA - 10И последнее, что я хочу объяснить перед началом работы — это то, как же понять, в какой ветке мы находимся. Даю минуту на поиск… нашли? Сдаетесь? 😀 В правом нижнем углу есть кнопка Git: master, где после Git: показано, на какой ветке находится сейчас проект. Если нажать на кнопку, можно проделать множество полезных вещей: перейти на другую ветку, создать новую, переименовать существующую, и так далее. Подружим Git с Intellij IDEA - 11

    Работа с репозиторием

    Полезные горячие клавиши

    Подружим Git с Intellij IDEA - 12

    Чтобы дальше работать, нужно запомнить несколько очень полезных горячих клавиш:

    1. ctrl + t — получить последние изменения с удаленного репозитория (git pull).
    2. ctrl + k — сделать коммит/посмотреть все изменения, которые есть на данный момент. Сюда входят и untracked, и modified файлы (смотри мою статью про гит, там это описано) (git commit).
    3. ctrl + shift + k — это команда для создания пуша изменений на удаленный репозиторий. Все коммиты, которые были созданы локально и еще не находятся на удаленном, будут предложены для пуша (git push).
    4. alt + ctrl + z — откатить в конкретном файле изменения до состояния последнего созданного коммита в локальном репозитории. Если в левом верхнем углу выделить весь проект, то можно будет откатить изменения всех файлов.

    Что мы хотим?

    1. Получить все изменения на текущий момент в основной ветке (master, например).
    2. На базе этой основной создать отдельную для своей работы.
    3. Реализовать новую функциональность.
    4. Перейти на основную ветку и проверить, не было ли новых изменений за время, пока работали. Если не было, то все хорошо, а если было, то делаем следующее: переходим на работающую ветку и делаем ребейз изменений из основной ветки в нашу. Если все прошло успешно, то отлично. Но вполне могут быть и конфликты. И их как раз можно будет заранее решить, не тратя время на удаленном репозитории. Казалось бы, зачем это делать? Это правило хорошего тона, которое предотвращает возникновение конфликтов уже после пуша своей ветки на локальный репозиторий (есть, конечно, вероятность,что все равно они будут, но она становится значительно меньше).
    5. Запушить свои изменения на удаленный репозиторий.

    Получить изменения с удаленного сервера?

    Подружим Git с Intellij IDEA - 13

    Я добавил описание в README новым коммитом и хочу эти изменения получить. Предлагается выбор между мерджем и ребейзом в случае, если были сделаны изменения и в локальном репозитории и на удаленном. Выбираем мерж. Вводим ctrl + t: В результате, видно как изменился README, т.е. изменения из удаленного репозитория подтянулись, и в правом нижнем углу можно посмотреть все детали тех изменений, которые пришли с сервера.

    Создать новую ветку на основе master

    Подружим Git с Intellij IDEA - 15

    Здесь все просто.

    1. Переходим в правый нижний угол и нажимаем на Git: master, выбираем + New Branch.

    Оставляем галочку Checkout branch и пишем имя новой ветки. Для меня это будет readme-improver.

    Подружим Git с Intellij IDEA - 16

    После этого Git: master сменится на Git: readme-improver.

    Имитируем параллельную работу

    Чтобы конфликты появились, их кто-то должен создать 😀 Я через браузер отредактирую README новым коммитом и таким образом сымитирую параллельную работу. Мол кто-то во время моей работы сделал изменения в том же файле, что и я, что приведет к конфликту. Я удалю слово “полностью” из 10 строки.

    Реализовать свою функциональность

    Задача стоит в том, чтобы поменять README и добавить описание к новой статье, то есть то, что работа в гите идет через Intellij IDEA. Добавляем это: Подружим Git с Intellij IDEA - 17Изменения выполнены, теперь можно создать коммит. Нажимаем горячую клавишу ctrl + k, получим: Подружим Git с Intellij IDEA - 18Прежде чем создать коммит, нужно внимательно посмотреть на то, что предлагается в этом окне. Я специально добавил стрелочек, куда посмотреть. Там много интересных вещей. В секции Commit Message пишем текст коммита, и чтобы он создался, нужно нажать кнопку Commit. Я так и не нашел, как бы так сделать это горячей клавишей, так что если кто-то найдет — пишите, я буду очень рад. Пишем, что README изменился и создаем коммит. В результате в левом нижнем углу всплывает оповещение, в котором будет имя коммита: Подружим Git с Intellij IDEA - 19

    Проверить, не изменилась ли основная ветка

    Выполнили задачу, она работает, тесты написали, все хорошо. Но прежде чем пушить на сервер, нужно таки проверить, не было ли изменений в основной ветке за это время. Как это могло произойти? Очень просто: кому-то дали задачу после вас, и этот кто-то сделал ее быстрее вас. Поэтому переходим на master ветку. Для этого нужно в правом нижнем углу сделать то, что показано ниже на рисунке: Подружим Git с Intellij IDEA - 20В master ветке нажимаем ctrl + t, чтобы получить ее последние изменения с удаленного сервера. Если посмотреть, какие были изменения, легко можно заметить, что произошло: Подружим Git с Intellij IDEA - 21Как видим, было удалено слово “полностью”. Быть может, это был кто-то из маркетинга и решил, что так нельзя писать и дал разработчикам задачу обновить это. Теперь у нас локально последняя версия master ветки. Переходим обратно на readme-improver. Теперь нужно заребейзить изменения из мастер ветки в нашу. Делаем: Подружим Git с Intellij IDEA - 22Если вы все правильно выполняли со мной, в результате должен показаться конфликт в README файле: Подружим Git с Intellij IDEA - 23Здесь также много информации, которую нужно бы понять и впитать. Здесь показан список (в нашем случае из одного элемента) файлов, в которых есть конфликты. Мы можем выбрать три опции:

    1. accept yours — принять только изменения из readme-improver.
    2. accept theirs — принять только изменения из master.
    3. merge — самому выбрать, что нужно оставить, а что убрать.

    Непонятно, что там изменилось, и если уж изменения находятся в мастере, значит они нужны там, и просто принять наши изменения нельзя, поэтому выбираем merge: Подружим Git с Intellij IDEA - 24Здесь видно, что есть три части:

    1. Это изменения из readme-improver.
    2. Результат. Пока что там так, как было до изменений.
    3. Изменения из master ветки.

    Нам нужно таким образом собрать результат, чтобы он всех удовлетворил. Поэтому изучили, что сделали ДО нас, поняли, что просто убрали слово “полностью”. Ну окей, без проблем. Значит и мы его уберем в результате и добавим наши изменения. Как только поправим результат, можно нажать Apply. После этого всплывет оповещение, что ребейз прошел успешно: Подружим Git с Intellij IDEA - 25Вот так мы зарезолвили свой первый конфликт через Intellij IDEA 😀

    Запушить изменения на удаленный сервер

    Следующий шаг — запушить изменения на удаленный сервер и создавать пул-реквест. Для этого просто нажимаем ctrl + shift + k, после чего получим: Подружим Git с Intellij IDEA - 26Слева будет список коммитов, которые не запушены на удаленный репозиторий, а справа будут все файлы, которые изменены. И все: нажимаем Push, и будет вам счастье 🙂 При успешном пуше будет вот такое уведомление в нижнем правом углу: Подружим Git с Intellij IDEA - 27

    Бонусная часть

    Подружим Git с Intellij IDEA - 28

    Не хотел изначально добавлять создание пул-реквеста в статью, но получается не очень законченной из-за этого. Поэтому переходим на гитхаб репозиторий (если он ваш, конечно))) ) и видим, что гитхаб уже знает, что нам предложить: Нажимаем на Compare & pull request, после чего нажимаем Create pull request. Из-за того, что мы заблаговременно порешали конфликты, теперь при создании пул-реквеста, его сразу можно мержить: Вот и все, что я хотел вам рассказать в этот раз. Разумеется, я только открыл вам дверь и показал малую часть. Остальное уже по мере необходимости сами найдете. Традиционно приглашаю подписаться на мой GitHub аккаунт, где я выставляю проекты-наработки на разные технологии, которые использую на работе. У меня недавно было личное достижение — мой проект был оценен уже более чем сотней разработчиков. Это невероятное чувство радости, что то, что ты сделал, кто-то использует. И использует для пользы.

    Полезные ссылки

    1. JavaRush: Начало работы с Git: подробный гайд для новичков
    2. GitHub: Демо-проект для работы
    3. JavaRush: Разбираем стратегии ветвления в Гите
    4. JetBrains: Set up a Git Repository
    5. Habr: Git rebase
    6. GitHub: Мой аккаунт

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *