Denis 災 nobody
более того, пусть даже это 1 проект, 5 гиг сорцов с обвязкой, выделять тупо нечего. А нужно поправить 1 файлик. гпрс. Твои дейтвия?
Denis 災 nobody
кроме "васян, выручай, зафикси там за меня"
Logan
кейс специфичный но интересный
Denis 災 nobody
Denis 災 nobody
лого и прочее.
Logan
если картинки это часть проекта, не?
мне кажется, что бинарные файлы не должны хранится в репозиториях исходного кода. Хотя хрен его знает
Анатолий
каждому в репу!
Logan
каждому в репу!
и по тыкве, ага
Denis 災 nobody
более того. Сайт - это вся входная документация, ТЗ, все доработки, вёрстки, шрифты, иконки... Делить на репы? Студия делает сайты не более 3 мес на сайт, проектов за год - 2-3 десятка легко. Студии уже 15 лет.
Pavel
мне кажется, что бинарные файлы не должны хранится в репозиториях исходного кода. Хотя хрен его знает
Должны-не должны, а круче тот инструмент, который позволяет делать больше в экстремальных ситуациях.
Denis 災 nobody
теперь представь, что за пздц будет в гит-хранилке
Sergey
ну-ка сделай мне чекаут libAAA из project/src/libAAA так, чтобы не развернуло весь project
задачка действительно интересная. гугл подсказывает вот что: git archive —remote=git://git.foo.com/project.git HEAD:path/to/directory filename | tar -x
Logan
Должны-не должны, а круче тот инструмент, который позволяет делать больше в экстремальных ситуациях.
не согласен. круче тот инструмент, который позволяет решать большинство задач простым способом. Экстремальные случаи потому и экстремальные, что их мало
Denis 災 nobody
в свн это штатно.
Logan
а бесконечно гибкий инструмент – бесконечно сложен
Denis 災 nobody
а в чем проблема коммита картинки?
🇷🇺 Роман
так что частичный клон это сила.
принципиально поддерживаю, все же отсутствие такой возможности - это в определенных случаях неудобные ограничения, которы m$ обошла своей gitfs (или как там оно)
Denis 災 nobody
к слову, есть именно гит для хранения файлов, забыл название
🇷🇺 Роман
но это не делает git сразу плохим, а pijul, например, серебряной пулей )))
Denis 災 nobody
у того же битбакета
Sergey
...с возможностью последущего коммита?
https://stackoverflow.com/questions/1125476/retrieve-a-single-file-from-a-repository/5324532#5324532 опять же
Sergey
тогда без клона свежего состояния - хотя и без файлов - никак.
Denis 災 nobody
https://stackoverflow.com/questions/1125476/retrieve-a-single-file-from-a-repository/5324532#5324532 опять же
пока не открывал - можно просто стянуть файл, потом сделать diff с копией, её заслать знакомому чтобы он применил патч..
Sergey
git clone —no-checkout —depth 1 git@github.com:foo/bar.git && cd bar && git show HEAD:path/to/file.txt
Sergey
пардон, не сообразил я сразу команду скинуть.
Denis 災 nobody
вообще, тут помогло бы только скачивание метадаты, без самой даты
Denis 災 nobody
а файлы уже тянуть только нужные
Sergey
ну вот оно и есть.
Denis 災 nobody
ок, через жопу но можно.
Pavel
не согласен. круче тот инструмент, который позволяет решать большинство задач простым способом. Экстремальные случаи потому и экстремальные, что их мало
Это примерно как не делать в квартире туалет, потому что случаев его применения 1% в день. Экстремальные граничные случаи случаются всегда, и по ним как раз и судят о возможностях инструмента.
Juriy
туалет применяют 100% раз в день
Juriy
jy cerf djcnht,jdfy gbplf
Juriy
он сука востребован пизда
Juriy
за него даже деньги берут легко
Sergey
....а коммит и пуш это даст сделать?
не берусь утверждать, т.к. не воспроизводил, но общая схема в любом разе простая: стащил метаданные, по метаданным склонировал нужный файл, поменял, закоммитил.
Juriy
и люди не торгуются
Juriy
?)
Pavel
Ну вот и раз в месяц случается что писец как надо счекаутить кусочек репы :)
Dmitry
если надо чекаутить кусочек, значит этот кусочек надо было в отдельный реп выносить.
Juriy
или ветку
Dmitry
а вы все хотите странного
Dmitry
ветку можно счекаутить отдельно
Juriy
это как в докет пихать все в один контейнер
Juriy
а потом спрашивать а че так все странно?
Pavel
если надо чекаутить кусочек, значит этот кусочек надо было в отдельный реп выносить.
Нет не значит. Это нечастый рандомный случай для рандомного кусочка. Но очень важный.
Евгений
Ну вот и раз в месяц случается что писец как надо счекаутить кусочек репы :)
Биологический пример: вы потребляете шаверму в подворотнях за вокзалом, и в связи с жтим хотите, чтобы каждый угол вашего дома был укомплектован пакетиком для рвоты. Но большинству людей, правильно использующих желудок, достаточно унитаза
Denis 災 nobody
ветку можно счекаутить отдельно
ветку в смысле кусок пути, а не branch
Dmitry
> вы все хотите странного
Juriy
а разве нелья кусок пути из бранча счекаутить?
Denis 災 nobody
man git-submodule
еще раз - это любой файл одной либы, файлов там тысячи.
Denis 災 nobody
срочный фикс рандомного кода
Евгений
Если у вас возникает потребность склонировать кусок пути, то это САБМОДУЛЬ. Инфа 💯. Не нужно хранить сабмодуль в самой репе. Это как питаться шавермой из крыс
Dmitry
а ещё вы путаете чекаут с фетчем
Denis 災 nobody
Евгений
еще раз - это любой файл одной либы, файлов там тысячи.
Плохая практика выкачивать один файл из либы. Вы перед коммитом не собираете свой код? Не проверяете его линтером?
Pavel
Если у вас возникает потребность склонировать кусок пути, то это САБМОДУЛЬ. Инфа 💯. Не нужно хранить сабмодуль в самой репе. Это как питаться шавермой из крыс
Тут нарушена причинно-следственная связь. До инцидента никогда не угадаешь, что сабмодуль а что нет. Теперь что по мере роста репы все равномерно распиливать по сабмодулям?
Denis 災 nobody
каждый мелкий файлик..
Евгений
автоматом система деплоя прогонит
Не удивительно, что с таким подходом у вас репа весит гигабайты
Pavel
Да. Также как по мере роста сервиса нужно распиливать на микросервисы
Ну вот в свн можно не заниматься такой херней а просто нормально жить
Denis 災 nobody
*facepalm
Евгений
Вы бы ещё автокоммит на сохранение файла сделали
Denis 災 nobody
Вы бы ещё автокоммит на сохранение файла сделали
а почему нет.. если оно в локальную ветку будет.
Denis 災 nobody
а потом rebase
Евгений
Желание создавать себе проблемы на пустом месте это проблемы
Евгений
Неправильно использовать инструмент и жаловаться на него -- это проблема
Ievgen
Вообще то гит умеет sparseCheckout это правда несколько более геморно, но умеет
Denis 災 nobody
инструмент не подходит - значит это пустое место...