Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Next challenges

Recent achievements

  • Global
  • Personal


  • Give kudos
  • Received
  • Given


  • Global

Trophy case

Kudos (beta program)

Kudos logo

You've been invited into the Kudos (beta program) private group. Chat with others in the program, or give feedback to Atlassian.

View group

It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

clone depth does what? Why do I care about this setting?

NPxComplete Atlassian Team Feb 08, 2017

This question is in reference to Atlassian Documentation: Configure bitbucket-pipelines.yml

Ask your question here...

2 answers

"Clone depth" is a feature of git to reduce server load: Instead of cloning the complete repository (as usually done with git), using clone depth just clones the last clone-depth-number revisions of your repository.

In literature this is also called "shallow clone"

For example See here: Git Beyond the Basics: Using shallow clones


As I don't use either bitbucket-cloud nor bitbucket-pipelines, I cannot say what clone depth is used for in this context

4 votes

Just to extend on what Johannes said: Bitbucket Pipelines uses a "shallow clone" by default to clone your repository into the build environment. If you have a large repository, a shallow clone will decrease the amount of time it takes for you repository to be cloned into the build environment. Typically you will only need to build/test recent commits, so there is no need to get the older ones.

Some deployment tools require the entire repository history in order to work. So the full clone feature exists to support these tools. There were also some issues with old tags not being in the clone (as they were more than 50 commits behind HEAD). So using a full clone (or a larger clone depth) means you can see all the tags in your repository. 

If you don't hit any issues at the moment in regards to cloning, it's likely you can stick with the default. smile




I would like to change the depth number on cloning in my pipeline jobs. How can i do that?



Hi Sean,

Try this:

depth: 5 # or some other number of commits. You can also configure 'full' if you need the entire commit history.

... # standard pipelines stuff from here

 Look here for more details:

Like # people like this

Great, thanks!

Hi @Philip Hodder,

Is it possible to define "depth" only for specific steps? I have one step that requires depth: full, but all another steps doesn't. How can I  do that?

Like # people like this

@Ihor Sviziev

Adding `git fetch --unshallow` to that specific step's script block worked for me. E.g.,:


- step:
- git fetch --unshallow
# moar commands

Cc: @Philip Hodder 

Like # people like this

Whoops. I missed the question.  @Ihor Sviziev not at the moment. I suggest you open a feature request here for us to track:

Like # people like this

You can use it directly in step

    - step&dummy
        nameDummy step
          - echo "Hello, I am pointless"
Like fry likes this

Suggest an answer

Log in or Sign up to answer
Community showcase
Published in Bitbucket

Calling any interview participants for Bitbucket Data Center

Hi everyone,  We are looking to learn more about development teams’ workflows and pain points, especially around DevOps, integrations, administration, scale, security, and the related challeng...

474 views 5 4
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you