В Perforce вы можете создать clientpec (рабочее пространство) и использовать опцию «-p» при синхронизации кода Perforce. Таким образом, он не затрагивает таблицу файлов на сервере Perforce и делает синхронизацию намного быстрее. Это в основном копирование и вставка файлов с сервера Perforce.Эквивалентность Perforce «p4 sync -p ... @ Changelist» в Git
Мы экспериментируем с такой операцией на стороне Git, но не смогли найти точную копию этой команды Perforce.
Есть ли эквивалентность этого?
Я знаю, что git reset --hard <commit>
будет работать, но это если вы уже использовали git clone
и получили локальную копию файлов. В наших случаях предположим, что мы никогда не запускаем git clone
на локальном компьютере.
Я прошу в этой ситуации, потому что я делаю сборку SCM, и исходный код от Git нужно синхронизировать с машиной сборки на определенной SHA, но в прошлом не было git clone
.
Спасибо.
'мерзавец клон --depth = 1' является то, что я сначала проверял, но он не работает хорошо потому что он всегда получает HEAD. Это не то, что может сделать наша текущая машина SCM. – xbeta
вариант # 2 в порядке, но мы говорим о 20 сборках каждый день в разное время, при разных изменениях (SHA) – xbeta
для варианта № 3, насколько быстро запускается 'git archive'? 'git clone --depth = 1' обычно занимает около 2 минут, чтобы скачать наш источник в оптимальной ситуации. – xbeta