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

Как удалить гит из проекта pycharm

  • автор:

Как удалить гит из проекта pycharm

Запись: and-semakin/mytetra_data/master/base/15513397391729g8nh9m/text.html на raw.githubusercontent.com

При прикреплении папки в окно с проектом, Git-репозиторий из папки тоже подключается к системе контроля версий. Но при откреплении папки, Git-репозиторий не отключается и пользователь видит коммиты из него в логе системы контроля версий.

1. Settings -> Version Control

2. Set «None» in list of modules or press Delete button.

  • Горячие клавиши PyCharm
  • Скрыть файлы в PyCharm
  • В IntelliJ / PyCharm перестает работать клавиатура
  • Исправить нерабочие горячие клавиши в нелатинских раскладках клавиатуры в IDE JetBrains IntelliJ IDEA, PyCharm
  • Сбросить триал на IDE WebStorm, PHPStorm
  • Удалить репозиторий из системы контроля версий в IntelliJ / PyCharm
  • Открепить папку от окна IntelliJ / PyCharm
  • Ограничение на длину просматриваемых структур в дебаггере PyCharm
  • PyCharm не правильно разрешает импорты
  • Очистить кэш/индексы в IntelliJ / PyCharm
  • Запустить линтеры через PyCharm
  • Multicursor (множественный курсор, множественная каретка) в IntelliJ / PyCharm
  • Назначить действие Force-click (на Mac Book) в IntelliJ / PyCharm
  • Установить JetBrains Toolbox на Linux
  • Не работает отладчик в PyCharm из-за папки code

7.3 Инструменты Git — Припрятывание и очистка

Часто пока вы работаете над одной частью вашего проекта и всё находится в беспорядке, у вас возникает желание сменить ветку и поработать над чем-то ещё. Сложность при этом заключается в том, что вы не хотите фиксировать наполовину сделанную работу только для того, чтобы иметь возможность вернуться к ней позже. Справиться с ней помогает команда git stash .

Операция stash берет изменённое состояние вашего рабочего каталога, то есть изменённые отслеживаемые файлы и проиндексированные изменения, и сохраняет их в хранилище незавершённых изменений, которые вы можете в любое время применить обратно.

Примечание
Переход на git stash push

В конце октября 2017 года в списке рассылки Git проходило обширное обсуждение, по итогам которого команда git stash save признана устаревшей в пользу существующей альтернативы git stash push . Основная причина этого заключается в том, что в git stash push есть возможность сохранить выбранные спецификации пути, что не поддерживает git stash save .

Команда git stash save не исчезнет в ближайшее время, поэтому не беспокойтесь о её внезапной пропаже. Но вы можете начать переход на push для использования новой функциональности.

Припрятывание ваших наработок

Для примера, предположим, что вы перешли в свой проект, начали работать над несколькими файлами и, возможно, добавили в индекс изменения одного из них. Если вы выполните git status , то увидите ваше изменённое состояние:

$ git status Changes to be committed: (use "git reset HEAD . " to unstage) modified: index.html Changes not staged for commit: (use "git add . " to update what will be committed) (use "git checkout -- . " to discard changes in working directory) modified: lib/simplegit.rb

Теперь вы хотите сменить ветку, но пока не хотите фиксировать ваши текущие наработки; поэтому вы припрячете эти изменения. Для того, чтобы припрятать изменение в выделенное для этого специальное хранилище, выполните git stash или git stash push :

$ git stash Saved working directory and index state \ "WIP on master: 049d078 Create index file" HEAD is now at 049d078 Create index file (To restore them type "git stash apply")

Теперь вы можете увидеть, что рабочая копия не содержит изменений:

$ git status # On branch master nothing to commit, working directory clean

В данный момент вы можете легко переключать ветки и работать в любой; ваши изменения сохранены. Чтобы посмотреть список припрятанных изменений, вы можете использовать git stash list :

$ git stash list stash@: WIP on master: 049d078 Create index file stash@: WIP on master: c264051 Revert "Add file_size" stash@: WIP on master: 21d80a5 Add number to log

В данном примере, предварительно были припрятаны два изменения, поэтому теперь вам доступны три различных отложенных наработки. Вы можете применить только что припрятанные изменения, используя команду, указанную в выводе исходной команды: git stash apply . Если вы хотите применить одно из предыдущих припрятанных изменений, вы можете сделать это, используя его имя, вот так: git stash apply stash@ . Если вы не укажете имя, то Git попытается восстановить самое последнее припрятанное изменение:

$ git stash apply On branch master Changes not staged for commit: (use "git add . " to update what will be committed) (use "git checkout -- . " to discard changes in working directory) modified: index.html modified: lib/simplegit.rb no changes added to commit (use "git add" and/or "git commit -a")

Как видите, Git восстановил в файлах изменения, которые вы отменили ранее, когда прятали свои наработки. В данном случае при применении отложенных наработок ваш рабочий каталог был без изменений, а вы пытались применить их в той же ветке, в которой вы их и сохранили; но отсутствие изменений в рабочем каталоге и применение их в той же ветке не являются необходимыми условиями для успешного восстановления припрятанных наработок. Вы можете припрятать изменения, находясь в одной ветке, а затем переключиться на другую и попробовать восстановить эти изменения. Также при восстановлении припрятанных наработок в вашем рабочем каталоге могут присутствовать изменённые и незафиксированные файлы — Git выдаст конфликты слияния, если не сможет восстановить какие-то наработки.

Спрятанные изменения будут применены к вашим файлам, но файлы, которые вы ранее добавляли в индекс, не будут добавлены туда снова. Для того, чтобы это было сделано, вы должны запустить git stash apply с опцией —index , при которой команда попытается восстановить изменения в индексе. Если вы выполните команду таким образом, то полностью восстановите ваше исходное состояние:

$ git stash apply --index On branch master Changes to be committed: (use "git reset HEAD . " to unstage) modified: index.html Changes not staged for commit: (use "git add . " to update what will be committed) (use "git checkout -- . " to discard changes in working directory) modified: lib/simplegit.rb

Команда apply только пытается восстановить припрятанные наработки — при этом они останутся в хранилище. Для того, чтобы удалить их, вы можете выполнить git stash drop , указав имя удаляемых изменений:

$ git stash list stash@: WIP on master: 049d078 Create index file stash@: WIP on master: c264051 Revert "Add file_size" stash@: WIP on master: 21d80a5 Add number to log $ git stash drop stash@ Dropped stash@ (364e91f3f268f0900bc3ee613f9f733e82aaed43)

Вы также можете выполнить git stash pop , чтобы применить припрятанные изменения и тут же удалить их из хранилища.

Необычное припрятывание

У припрятанных изменений есть несколько дополнительных вариантов использования, которые также могут быть полезны. Первый — это использование довольно популярной опции —keep-index с командой git stash . Она просит Git не только припрятать то, что вы уже добавили в индекс, но одновременно оставить это в индексе.

$ git status -s M index.html M lib/simplegit.rb $ git stash --keep-index Saved working directory and index state WIP on master: 1b65b17 added the index file HEAD is now at 1b65b17 added the index file $ git status -s M index.html

Другой распространённый вариант, который вы, возможно, захотите использовать — это припрятать помимо отслеживаемых файлов также и неотслеживаемые. По умолчанию git stash будет сохранять только изменённые и проиндексированные отслеживаемые файлы. Если вы укажете опцию —include-untracked или -u , Git также припрячет все неотслеживаемые файлы, которые вы создали. Однако включение этой опции по-прежнему не будет прятать файлы с явным игнорированием; чтобы дополнительно припрятать игнорируемые файлы, используйте —all (или просто -a ).

$ git status -s M index.html M lib/simplegit.rb ?? new-file.txt $ git stash -u Saved working directory and index state WIP on master: 1b65b17 added the index file HEAD is now at 1b65b17 added the index file $ git status -s $

И наконец, если вы укажете флаг —patch , Git не будет ничего прятать, а вместо этого в интерактивном режиме спросит вас о том, какие из изменений вы хотите припрятать, а какие оставить в вашем рабочем каталоге.

$ git stash --patch diff --git a/lib/simplegit.rb b/lib/simplegit.rb index 66d332e..8bb5674 100644 --- a/lib/simplegit.rb +++ b/lib/simplegit.rb @@ -16,6 +16,10 @@ class SimpleGit return `# 2>&1`.chomp end end + + def show(treeish = 'master') + command("git show #") + end end test Stash this hunk [y,n,q,a,d,/,e,?]? y Saved working directory and index state WIP on master: 1b65b17 added the index file

Создание ветки из припрятанных изменений

Если вы спрятали некоторые изменения, оставили их на время, а сами продолжили работать в той же ветке, у вас могут возникнуть проблемы с восстановлением наработок. Если восстановление будет затрагивать файл, который уже был изменён с момента сохранения наработок, то вы получите конфликт слияния и должны будете попытаться разрешить его. Если вам нужен более простой способ снова протестировать припрятанные изменения, вы можете выполнить команду git stash branch , которая создаст для вас новую ветку, перейдёт на коммит, на котором вы были, когда прятали свои наработки, применит на нём эти наработки и затем, если они применились успешно, удалит эти припрятанные изменения:

$ git stash branch testchanges M index.html M lib/simplegit.rb Switched to a new branch 'testchanges' On branch testchanges Changes to be committed: (use "git reset HEAD . " to unstage) modified: index.html Changes not staged for commit: (use "git add . " to update what will be committed) (use "git checkout -- . " to discard changes in working directory) modified: lib/simplegit.rb Dropped refs/stash@ (29d385a81d163dfd45a452a2ce816487a6b8b014)

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

Очистка рабочего каталога

Наконец, у вас может возникнуть желание не прятать некоторые из изменений или файлов в вашем рабочем каталоге, а просто избавиться от них. Команда git clean сделает это для вас.

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

Вам нужно быть очень аккуратными с этой командой, так как она предназначена для удаления неотслеживаемых файлов из вашего рабочего каталога. Даже если вы передумаете, очень часто нельзя восстановить содержимое таких файлов. Более безопасным вариантом является использование команды git stash —all для удаления всего, но с сохранением этого в виде припрятанных изменений.

Предположим, вы хотите удалить мусор и очистить ваш рабочий каталог; вы можете сделать это с помощью git clean . Для удаления всех неотслеживаемых файлов в вашем рабочем каталоге, вы можете выполнить команду git clean -f -d , которая удалит все файлы и также все каталоги, которые в результате станут пустыми. Параметр -f (сокращение от слова force — заставить) означает принудительное удаление, подчеркивая, что вы действительно хотите это сделать, и требуется, если переменная конфигурации Git clean.requireForce явным образом не установлена в false .

Если вы хотите только посмотреть, что будет сделано, вы можете запустить команду с опцией -n , которая означает «имитируй работу команды и скажи мне, что ты будешь удалять».

$ git clean -d -n Would remove test.o Would remove tmp/

По умолчанию команда git clean будет удалять только неотслеживаемые файлы, которые не добавлены в список игнорируемых. Любой файл, который соответствует шаблону в вашем .gitignore , или другие игнорируемые файлы не будут удалены. Если вы хотите удалить и эти файлы (например, удалить все .o -файлы, генерируемые в процессе сборки, и таким образом полностью очистить сборку), вы можете передать команде очистки опцию -x .

$ git status -s M lib/simplegit.rb ?? build.TMP ?? tmp/ $ git clean -n -d Would remove build.TMP Would remove tmp/ $ git clean -n -d -x Would remove build.TMP Would remove test.o Would remove tmp/

Если вы не знаете, что сделает при запуске команда git clean , всегда сначала выполняйте её с опцией -n , чтобы проверить дважды, перед заменой -n на -f и выполнением настоящей очистки. Другой способ, который позволяет вам более тщательно контролировать сам процесс — это выполнение команды с опцией -i (в «интерактивном» режиме).

Ниже выполнена команда очистки в интерактивном режиме.

$ git clean -x -i Would remove the following items: build.TMP test.o *** Commands *** 1: clean 2: filter by pattern 3: select by numbers 4: ask each 5: quit 6: help What now>

Таким образом, вы можете просмотреть каждый файл индивидуально или указать шаблоны для удаления в интерактивном режиме.

Примечание

Существует причудливая ситуация, когда вам, возможно, придется проявить особую настойчивость, попросив Git очистить ваш рабочий каталог. Если вы оказались в рабочем каталоге, в который вы скопировали или клонировали другие репозитории Git (возможно, в виде подмодулей), даже git clean -fd откажется удалить эти каталоги. В таких случаях вам нужно добавить второй параметр -f для акцентирования.

Как убрать git из проекта в PyCharm

Git – это мощная система контроля версий, которая широко используется разработчиками программного обеспечения. PyCharm – это одна из самых популярных интегрированных сред разработки (IDE) для Python, которая включает поддержку Git.

Во время работы с проектом, вам может понадобиться временно отключить Git от проекта PyCharm. Это может быть полезно, например, когда вы хотите выполнить некоторые изменения в проекте без влияния на Git-репозиторий.

В этой статье я подробно опишу процесс отключения Git от проекта PyCharm, чтобы вы смогли без проблем продолжить работу над своим проектом.

Отключение Git от проекта PyCharm: пошаговая инструкция

Шаг 1: Откройте PyCharm и выберите проект, от которого вы хотите отключить Git.

Шаг 2: Нажмите на меню «VCS» в верхней панели инструментов и выберите пункт «Enable Version Control Integration» (Включить интеграцию системы контроля версий).

Шаг 3: В открывшемся окне выберите «None» в качестве системы контроля версий и нажмите кнопку «OK».

Шаг 4: PyCharm удалит все файлы Git и отключит интеграцию Git от проекта. После этого вы будете свободны работать с проектом без Git.

Шаг Действие
1 Откройте PyCharm и выберите проект
2 Нажмите на меню «VCS» и выберите пункт «Enable Version Control Integration»
3 Выберите «None» в качестве системы контроля версий и нажмите «OK»
4 Git будет отключен от проекта

Теперь вы знаете, как отключить Git от проекта PyCharm. Помните, что после отключения Git, все изменения в проекте будут проходить без системы контроля версий, поэтому будьте осторожны, чтобы не потерять никакие важные данные.

Удаление Git репозитория

Чтобы удалить Git репозиторий из проекта в PyCharm, выполните следующие шаги:

  1. Откройте проект в PyCharm.
  2. Откройте настройки проекта, нажав на «File» в меню и выбрав «Settings».
  3. В окне настроек проекта, выберите «Version Control» в левой панели.
  4. В списке доступных инструментов управления версиями, найдите «Git» и выделите его.
  5. Нажмите кнопку «[-]», расположенную под списком инструментов управления версиями, чтобы удалить Git.
  6. Нажмите «Apply» и «OK», чтобы сохранить изменения.

После выполнения этих шагов Git репозиторий будет удален из проекта в PyCharm.

Отключение Git интеграции

Отключение интеграции Git в PyCharm может быть полезным в случаях, когда вы хотите перестать использовать Git в своем проекте или начать с чистого листа без Git истории. Вот пошаговая инструкция, как отключить Git от проекта в PyCharm:

Шаг Действие
1 Откройте ваш проект в PyCharm.
2 Нажмите на вкладку VCS в верхней панели меню.
3 Выберите опцию Disable Version Control Integration.
4 В появившемся диалоговом окне подтвердите действие, нажав на кнопку OK.

После выполнения этих шагов, Git интеграция будет отключена для вашего проекта в PyCharm. Кроме того, Git файлы и история будут оставлены нетронутыми, чтобы вы могли в будущем снова включить интеграцию Git, если понадобится.

Удаление Git корневой папки

Когда вы отключаете Git от проекта в PyCharm, Git корневая папка все равно остается в вашем проекте. Если вы хотите полностью удалить Git из вашего проекта и удалить Git корневую папку, следуйте этим шагам:

  1. Откройте папку вашего проекта в файловом менеджере.
  2. Найдите и удалите скрытую папку «.git». Обратите внимание, что эта папка может быть скрыта, поэтому убедитесь, что вы отображаете скрытые файлы и папки.
  3. Убедитесь, что вы не удалили никакие другие неотносящиеся к Git файлы или папки в вашем проекте.

После выполнения этих шагов Git и Git корневая папка будут полностью удалены из вашего проекта.

Обновление .gitignore файла

  1. Откройте ваш проект в PyCharm.
  2. Откройте структуру проекта, щелкнув на вкладке «Project» в нижней панели.
  3. Найдите файл .gitignore.
  4. Щелкните правой кнопкой мыши по файлу .gitignore и выберите «Open for Editing» (Открыть для редактирования).
  5. В открывшемся редакторе .gitignore файла добавьте строки, которые определяют файлы и папки, которые вы хотите исключить из Git-отслеживания.
  6. После завершения редактирования .gitignore файла, сохраните изменения и закройте редактор.

После обновления .gitignore файла, Git будет проигнорировать изменения в файлах и папках, указанных в этом файле. Теперь вы можете продолжить процесс отключения Git от вашего проекта в PyCharm.

Очистка Git настроек проекта

Чтобы отключить Git от проекта в PyCharm, необходимо выполнить следующие шаги:

  1. Откройте проект в PyCharm.
  2. Выберите меню «VCS» в верхней панели навигации.
  3. Наведите курсор на «Enable Version Control Integration» и выберите пункт «Git».
  4. Состояние проекта в PyCharm изменится, и в верхней панели появится новая вкладка «Git».
  5. Откройте вкладку «Git» и выберите меню «VCS» в верхней панели навигации.
  6. Выберите пункт «Disable Version Control Integration» в выпадающем меню.
  7. Появится диалоговое окно с предупреждением об отключении Git от проекта. Нажмите «OK».

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

Проверка отключения Git

Чтобы убедиться, что проект успешно отключен от системы контроля версий Git, выполните следующие шаги:

  1. Откройте окно терминала в PyCharm.
  2. Выполните следующую команду: git status.

Если вы видите сообщение «fatal: Not a git repository (or any of the parent directories): .git», это означает, что Git успешно отключен и проект больше не связан с системой контроля версий.

Также вы можете проверить, отсутствуют ли любые файлы или папки, связанные с Git, в директории вашего проекта.

  1. Перейдите к корневой папке вашего проекта.
  2. Проверьте наличие папки .git в корневой директории проекта.

Если папка .git отсутствует, это означает, что Git успешно отключен и проект больше не использует систему контроля версий Git.

Теперь вы можете быть уверены, что Git полностью отключен от вашего проекта в PyCharm.

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

Одна из самых распространенных систем управления версиями – Git. Ее ядро добавляет в систему ряд консольных команд, предназначенных для управления репозиториями. В самих же репозиториях хранятся важные каталоги, конфигурационные файлы, журналы и прочие связанные элементы.

Далее я расскажу, как создать, клонировать и удалить эти репозитории.

Следующие инструкции предназначены для тех, кто уже установил Git на свой сервер. Если вы еще не сделали этого, используйте руководство с GitHub, которое поможет разобраться с выполнением поставленной задачи.

Создание Git-репозитория

Сначала рассмотрим создание репозитория. Представим, что у вас уже есть папка для хранения файлов, но она еще не находится под контролем Git.

Откройте «Командную строку‎» (Windows) или Терминал (Linux/macOS) и перейдите по пути данной папки.

Команда для перехода по пути установки Git-репозитория

В Linux выполните команду:

cd /home/user/directory 

В macOS :

cd /Users/user/directory

В Windows:

cd C:/Users/user/directory

Остается только ввести нижеуказанную команду, чтобы завершить первый этап.

git init

Команда для установки локального Git-репозитория

Благодаря этой команде создается структура подкаталога со всеми необходимыми файлами. Кстати, все они расположены в подпапке с названием .git . Пока что проект не находится под контролем учета версий, поскольку в него добавлены только нужные элементы для работы Git. Для добавления файлов в репозиторий будем использовать git add. Команда git commit является заключительной:

git add git commit -m 'initial project version'

Теперь у вас есть Git-репозиторий со всеми необходимыми составляющими и отслеживаемыми файлами.

Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей

Клонирование существующего репозитория

Второй вариант создания директории для контроля версий – копирование существующего проекта с другого сервера. Это актуально, когда осуществляется доработка готового проекта или вы желаете внедрить его компоненты в свой. В этом поможет команда git clone , о которой и пойдет речь далее.

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

Для клонирования существующего репозитория понадобится ввести git clone . Пример такой команды вы видите ниже:

git clone https://github.com/rep/rep

Данная команда позволила вам получить клон всех версий указанного репозитория (в качестве примера было взято название rep ). Теперь на вашем сервере создана директория с указанным названием. К ней подключена поддержка контроля версий, то есть появилась папка .git .

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

git clone https://github.com/rep/rep myrep

Завершим этот раздел статьи описанием содержимого, которое появляется в консоли при выполнении команды. Данный вывод соответствует успешному клонированию:

Cloning into 'Git'. remote: Counting objects: 46, done. remote: Compressing objects: 100% (25/25), done. remote: Total 46 (delta 7), reused 43 (delta 4), pack-reused 0 Unpacking objects: 100% (46/46), done. Checking connectivity. done.

Удаление локального Git-репозитория

Если с созданием и клонированием репозиториев все понятно, то как быть, когда папка с проектом уже существует, но в нее нужно поместить новые данные, удалив предыдущие, или когда Git-репозиторий на сервере больше не нужен. В таком случае осуществляется стандартное удаление.

В корне каталога с проектом необходимо избавиться от папки .git, о которой уже шла речь выше. Так вы удаляете только ту информацию, которая связана с Git, но сам проект остается. В Linux через Терминал вы должны перейти к каталогу с проектом и ввести следующую команду:

rm -rf .git

Еще один вариант – удаление .gitignore и .gitmodules в случае их наличия. Тогда команда меняет свой вид на:

rm -rf .git*

Остается только убедиться в отсутствии скрытой папки, которая может помешать инсталляции новой. Для этого существует простая команда ls -lah , выполнить которую необходимо с указанием того же каталога.

Только что мы разобрались с основами создания, клонирования и удаления Git-репозитория. Удачи!

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

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