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

Reporting on 'git clone'

Jennifer Schuch Aug 21, 2013

Is there a way to produce a report on who has done a 'git clone' against a repo?

1 answer

0 votes
Charles O'Farrell Aug 22, 2013

Hi Jennifer,

Not currently, and honestly it's not likely a UI feature that we're likely to add any time soon. However the data is certainly available to you in the atlassian-stash-access logs. Here is some documentation around the log format:

And if you're interested my manager has written this very handy tool to show the number of fetch, clones and pushes on a Stash instance over time. (Be warned it's written in Haskell - but there a binary downloads if you just want to run it)

Let me know if you need any more help parsing those logs.



Jennifer Schuch Aug 25, 2013

Thank you, Charles

Any chance having the logparser packaged for Windows?

Jennifer Schuch Aug 25, 2013

Hi Charles,

Reviewing the log files, I'm seeing a large number of ...."POST/scm/mob/xyz.git/git-upload-pack HTTP/1.1" | "" "JGit/" | clone, cache:hit | <or cache:miss> ...

As well, as a few:

"GET /s/en_US-1988229788/0df130c/3/2.0.0/_/download/resources/com.atlassian.stash.stash-sourcetree-plugin:stash-sourcetree-resources/sourcetree-clone-bg.png HTTP/1.1"

What is the difference between these two line entries?

Thanks much,


Charles O'Farrell Aug 26, 2013

Hi Jennifer,

The first is someone doing a clone of the xyz repository from Stash.The latter is a browser requesting the sourcetree png image which would most likely happen on a repository page where we show the clone button.



Charles O'Farrell Aug 26, 2013

Hi again,

Are you asking what GET/POST means? That's part of the HTTP specifaction. GET is an operation that is asking the server for something, usually a file or data. The browser uses GET to fetch the HTML of a page for example. POST is usually an operation to submit data to the server, which you will see for both push and clone. Even though clone is reading data from the server, it has to submit a list of changesets that it is interested in downloading, which is why it's a POST and not a GET.

Does that help?


Suggest an answer

Log in or Sign up to answer
This widget could not be displayed.
This widget could not be displayed.
Community showcase
Published in Bitbucket Pipelines

Building a Bitbucket Pipe as a casual coder :  #!/bin/bash source "$(dirname "$0")/" enable_debug extra_args="" if [[ "${DEBUG}" == "true" ]]; then extra_args="--verbose" fi # mandatory variables R...

3,310 views 1 22
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