Нет, они не эквивалентны, но только в незначительных деталях.
Во-первых, во втором скрипте отсутствует git checkout
, поэтому вытащите-перебазируйте dev
в текущую ветвь (или, скорее: перебазируйте текущую ветвь на удаленный dev), какой бы ни была текущая ветвь, в то время как первый скрипт обеспечит Вы вытягиваете удаленного разработчика в локальное устройство
Второе отличие, первый скрипт делает git pull
без --rebase. Если вы не установили эту опцию в GIT самостоятельно, git pull
выполнит выборку и слияние (от удаленного разработчика до локального разработчика). Этот шаг полностью отсутствует во втором скрипте.
Пока все по-другому, так что, я полагаю, вы хотели иметь
git checkout 1234-bug-login
в качестве первой строки второго скрипта. Это гарантирует, что оба сценария попытаются перебазировать одну и ту же ветку.
Третье отличие, -f
в команде push, довольно очевидно. Принимая во внимание, что оба сценария эффективно «перебазируют 1234-bug-login» на «origin / dev», то либо они необходимы в обоих сценариях, либо ни того, ни другого.