Как правильно настроить зависимости C# при работе с гит

100
26 декабря 2020, 02:50

Допустим у меня есть библиотека для работы с матрицами.

Когда я подключаю ее к другому проекту(А), то .dll файл копируется в папку debug. При загрузке проекта (А) на gitHub папка "debug" не загружается и нужный .dll файл теряется.

Выходит, после скачивания этот проект будет невозможно собрать. Как решается данная проблема?

Answer 1

В случае если вы создавали проект из Visual studio, которая автоматически сгенерировала вам файлы .gitignore и .gitattributes, то папки Debug и Release прописываются в исключения: их НЕ надо хранить в гите, они содержат уже скомпилированный проект и так не делают. Исходники отдельно, собранные артефакты - отдельно.

Очень странным решением кажется то, что вы копируете (чем?) ваш dll-файл в папку debug. Если уж вы не собираете свою dll на сборочном сервере в nuget-пакет, а подкладываете в проект - то есть более правильный путь. Создайте в solution папку lib, в которую положите dll. Это уже не папка debug, поэтому гит не будет против добавления файлов из этой папки в staging area. В вашем solution в нужных projects подключите библиотеку из папки lib и укажите в настройках файла, что его нужно всегда копировать в директорию где происходит сборка.

Так стоит настраивать проект, если вы не можете по каким-то причинам собрать свой dll в пакет.

На будущее рекомендую всё-таки потратить время и сделать более правильно: собрать nuget-пакет, не хранить их в исходниках и настроить nuget restore.

READ ALSO
Не пойму какой ответ Json нужен

Не пойму какой ответ Json нужен

Скинули код и попросили помочьКакой ответ должен парсить этот код Newtonsoft Json? Помогите, пожалуйста

139
Как оптимизировать код, может шаблоном?

Как оптимизировать код, может шаблоном?

Всем приветЕсть 5 инструментов и мне нужно с ними делать всякие стандартные вещи добавлять/удалять/изменять/показать их в таблице

128
C# SQL поиск по таблице

C# SQL поиск по таблице

Не могу понять, в чем проблема, где-то накосячила с запросом, но не могу понять, где

119
Как преобразовать форматированные даты в цифры (3.12M)

Как преобразовать форматированные даты в цифры (3.12M)

Допустим строка 3,12КЯ хочу преобразовать его в норм число

132