принудительно включать файлы в .gitignore, если местоположение неизвестно - PullRequest
0 голосов
/ 14 февраля 2019

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

Фрагменты кода - это проекты для микроконтроллера (devboard).

Структура папок репозитория содержит:

.gitatrubutes
.gitignore
README.md
code_snippets (folder, which contain a bunch of grouped projects as folders)
- 00. Blink
- 01. Buttons
- ...
- etc.

Каждый проект имеет несколько папок для сервисных / технических / отладочных целей.Одним из них является папка .pioenvs.Мне не нужен какой-либо файл из этой папки .pioenvs, кроме одной: скомпилированная прошивка, которая хранится как файл firmware.bin в подпапке, названной в честь использованной платы разработки.

Содержимое моего .gitignoreфайл:

**/.pioenvs
**/.pio
**/.piolibdeps
**/.gitignore
**/test
**/.travis.yml
**/.vscode/extensions.json
**/.vscode/settings.json
*/.vscode/.browse.c_cpp.db
**/.vscode/c_cpp_properties.json
**/.vscode/launch.json
**/.vscode/extensions.json
**/include/README
**/lib/README

файл прошивки может быть расположен как:

/repository_folder/code_snippets/*project_name*/.pioenvs/*devboard_name*/firmware.bin

Например:

/repository_folder/code_snippets/00. Blink/.pioenvs/nucleo_f411re/firmware.bin

папка nucleo_f411re может иметь другое имя(если используется другая плата разработки, например mapplemini или bluepill), но целевой файл всегда имеет имя firmware.bin.И мне не нужны никакие другие файлы в папке .pioenvs.

Как добавить эти файлы в исключение и синхронизировать их с репозиторием?

Я пытался добавить следующее в .gitignore файл, но результата не было:

!/.pioenvs/*/firmware.bin
!/.pioenvs//firmware.bin
!//.pioenvs//firmware.bin
!//.pioenvs/*/firmware.bin

Я также прочитал этот пост , но это не помогло.

PS:

- Windows 10 [x64]
- GitHub Desktop 1.6.2 [x64]
- VS Code + PlatformIO plug-in
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...