Как удалить папку .idea из git-репозитория
Очень часто при создании проектов в PhpStorm от компании JetBrains при первом коммите народ по привычке нажимает «ОК» на все вопросы IDE и папка .idea попадает в git-репозиторий, которой там совсем не место. Удаляется оттуда она очень просто.
# Добавить папку в игнор-лист гита echo '.idea' >> .gitignore # Удалить папку из стейджинга git rm -r --cached .idea # Добавить файл в гит git add .gitignore # Зафиксировать изменения git commit -m 'Удалил папку .idea из репозитория' # Запушить в репу git push
Сами ребята из JetBrains рекомендуют такой файл .gitignore :
# User-specific stuff .idea/**/workspace.xml .idea/**/tasks.xml .idea/**/usage.statistics.xml .idea/**/dictionaries .idea/**/shelf # Sensitive or high-churn files .idea/**/dataSources/ .idea/**/dataSources.ids .idea/**/dataSources.local.xml .idea/**/sqlDataSources.xml .idea/**/dynamic.xml .idea/**/uiDesigner.xml .idea/**/dbnavigator.xml # Gradle .idea/**/gradle.xml .idea/**/libraries # Gradle and Maven with auto-import # When using Gradle or Maven with auto-import, you should exclude module files, # since they will be recreated, and may cause churn. Uncomment if using # auto-import. # .idea/modules.xml # .idea/*.iml # .idea/modules # CMake cmake-build-*/ # Mongo Explorer plugin .idea/**/mongoSettings.xml # File-based project format *.iws # IntelliJ out/ # mpeltonen/sbt-idea plugin .idea_modules/ # JIRA plugin atlassian-ide-plugin.xml # Cursive Clojure plugin .idea/replstate.xml # Crashlytics plugin (for Android Studio and IntelliJ) com_crashlytics_export_strings.xml crashlytics.properties crashlytics-build.properties fabric.properties # Editor-based Rest Client .idea/httpRequests
Как убрать папку idea из репозитория?
Всем привет. При пуше Unity проекта на github, также пушится папка idea. Добавление её в исключение файла gitignore не помогает. Как быть?
- Вопрос задан 11 авг. 2023
- 286 просмотров
Комментировать
Решения вопроса 2

Сергей Кузнецов @sergey-kuznetsov Куратор тега Git
Автоматизатор
Вы удивитесь, но чтобы убрать папку из репозитория, вам нужно удалить её из репозитория. Только так.
Например вы можете удалить папку в рабочем каталоге и затем не забыть закоммитить это изменение.
Если эти файлы нужны в рабочем каталоге, то можно удалить только из репозитория.
git rm —cached ".idea" git commit -m "Delete .idea"
Файл .gitignore поможет не добавить в репо случайно что-то лишнее. Поэтому мы его создаем в первую очередь, ещё до создания коммитов. Более того, даже если файлы подпадают под правила игнора, это всё равно не запрещает нам их закоммитить при сильном желании.
Запомните! Простое редактирование файла .gitignore не удаляет никакие файлы из репозитория. Вам надо удалить файлы самостоятельно, создав коммит удаления.
Ответ написан 11 авг. 2023
Комментировать
Нравится 5 Комментировать

Токсичный шарпист
Ещё git rm пропиши, чтобы удалить её из гита.
И покажи пример gitignore, который «не работает»
Ответ написан 11 авг. 2023

Kavani @Kavani Автор вопроса
Василий Банников,
# This .gitignore file should be placed at the root of your Unity project directory
#
# Get latest from https://github.com/github/gitignore/blob/master/Un.
#
/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/
/[Uu]ser[Ss]ettings/
# MemoryCaptures can get excessive in size.
# They also could contain extremely sensitive data
/[Mm]emoryCaptures/
# Asset meta data should only be ignored when the corresponding asset is also ignored
!/[Aa]ssets/**/*.meta
# Uncomment this line if you wish to ignore the asset store tools plugin
# /[Aa]ssets/AssetStoreTools*
# Autogenerated Jetbrains Rider plugin
/[Aa]ssets/Plugins/Editor/JetBrains*
# Visual Studio cache directory
.vs/
# Gradle cache directory
.gradle/
# Autogenerated VS/MD/Consulo solution and project files
ExportedObj/
.consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb
*.mdb
*.opendb
*.VC.db
# Unity3D generated meta files
*.pidb.meta
*.pdb.meta
*.mdb.meta
# Unity3D generated file on crash reports
sysinfo.txt
# Builds
*.apk
*.aab
*.unitypackage
# Crashlytics generated file
crashlytics-build.properties
# Packed Addressables
/[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin*
# Temporary auto-generated Android Assets
/[Aa]ssets/[Ss]treamingAssets/aa.meta
/[Aa]ssets/[Ss]treamingAssets/aa/*
Assets/Plugins/TextMesh Pro/Examples _ Extras/
.idea/
Как удалить папку .idea и лишние файлы из Git
Прежде всего добавим файл .gitignore в корень проекта:
touch .gitignore
Добавим в него построчно имена папок, которые необходимо исключить из синхронизации:
echo «.idea» > .gitignore
Удалим все проиндексированные файлы:
git rm -r -f —cached .
Запустим индексацию заново:
git add .
Добавляем коммит и пушим:
git commit -m «Remove files»
git push -u origin master
wpupru / git_ignore
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
| Создаем репозиторий и ставим галочку о создании файла ридми, так как пустых папок гитхаб не видит. |
| После создания репозитория, идем в консоль и даем команду создать клон нового репозитория в нужной нам папке |
| cd /d/localhost/ |
| cd /disk letter/folder/ |
| git clone https://github.com/yourgit_folder/yourgitname.git |
| При создании гит репозитория на компе: |
| Команды только для первого раза: |
| git config —global user.name «user name» |
| git config —global user.email «your maim» |
| git config —global core.autocrlf true |
| git config —global core.safecrlf false |
| git config —global core.eol native |
| Инициализируем папку для Git репозитория. |
| Это нужно сделать только один раз для каждого проекта. |
| git init |
| Связываем папку с удаленным репозиторием |
| git remote add origin https://github.com/yourgit_folder/yourgitname.git |
| Добавляем все новые и измененные файлы |
| git add . |
| Помечаем все новые и измененные файлы сообщением (commit) |
| git commit -m «your message» |
| Закачиваем код на удаленный репозиторий (только для первого раза!) |
| git push -u origin master |
| При обычной работе: |
| Посмотреть статус изменений, которые были сделаны: |
| git status |
| Добавляем все новые и измененные файлы |
| git add |
| Помечаем все новые и измененные файлы сообщением (commit) |
| git commit -m «your message» |
| Закачиваем код на удаленный репозиторий |
| git push |
| Для скачивания репозитория |
| git pull |
| После каких-то изменений в коде, выполняем все те же команды |
| git add . |
| git commit -m «I changed the user module.» |
| git push |
| Откат изменений |
| Полный откат до предыдущего коммита |
| git reset HEAD —hard |
| Сброс изменений в файле на версию коммита |
| git checkout |
| Откат до установленного тега, например v1 |
| git checkout v1 |
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment