git - Disadvantages of shallow cloning on Travis and other CI services? -
most ci services provide way shallow clone repository. example, on travis:
git: depth: 1 or on appveyor:
clone_depth: 1 or shallow_clone: true this has obvious benefit of speed, since don't have clone whole repository.
is there disadvantages shallow cloning on ci services? there situation shallow clone make ci build fail? otherwise, why isn't shallow cloning default setting these ci services?
there's 2 reasons why doesn't happen.
firstly, hash of shallow clone going different version may have in repository. result, it's not going possible track build you've done particular result.
secondly git servers have ability send optimised 'everything.pack' if have no details. otherwise server have provide custom commit pack contained shallow copy send you. although there may more data transmitted across wire, may result in more work on server.
finally quite lot of ci builds perform kind of tag operation , upload repository, , can't practically tag shallow clone (see point 1).
Comments
Post a Comment