2016-11-24 3 views
0

Я использую частный репозиторий GitHub для разработки проекта. Проблема в том, что каждый раз, когда я делаю фиксацию, куча файлов bin, которые я не модифицировал вручную, также совершается. Если я их проигнорирую, это вызовет проблемы, когда кто-то другой потянет или клонирует репо? Также, если вы можете дать мне советы по лучшим практикам, было бы здорово.Должен ли я передавать dll и сгенерированные файлы bin в репозиторий на GitHub или просто игнорировать их?

enter image description here

На этой фиксации, например, я только модифицированным около 8 файлов, но 44 изменений подталкивают к репо. Большинство из них - файлы bin.

ответ

1

Если эти файлы не были совершены до, но являются частью вашего индекса, вам нужно сбросить их (чтобы удалить их из индекса)

git reset *.dll 
git reset *.mdb 
git reset *.apk 

(если были совершены до, см «Ignoring files»)

Затем вы можете добавить их в .gitignore

*.dll 
*.mdb 
*.apk 

Проверка со статусом мерзавца, что эти файлы не перечислены больше.

Наконец, вы можете git add -A и git commit

Игнорирование сгенерированных файлов не будет проблемой для других пользователей: они будут восстанавливать их из источников репо.

Что касается dlls, лучше всего включить только NuSpec или nuget.config, который объявит, что вам нужно, чтобы получить указанную DLL из Nuget.
См. Также «The right way to restore NuGet packages» от David Ebbo и Nuget automatic restore.

1

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

Если файлы dll являются Сторонними файлами, которые используются для поддержки некоторых функций вашего проекта, вам лучше поместить их в список управления версиями.