Can we get gc --prune executed on gitlab's side?

We’re having a problem in which gitlab.com is refusing pushes to our repository. gitlab.com reports that the repository is 9.8G in size; however locally, the repository is 1.2G.

I think the problem is that in this project’s early life, it was based on an existing large project. This was chopped down to a very small starting point, and then force pushed. We didn’t know about having to upload BFG map files in order to get rid of the removed revisions at the time, so this step wasn’t done.

Since our local repositories no longer contain any of the revisions that we want gone from the server, running BFG isn’t going to do us any good.

That leaves us with a bit of an issue. I’m pretty sure that running gc prune on the server-side would solve it, but there doesn’t appear to be any way for us to do that.

Another thing we’ve tried is to push the (1.2G) repository to another (fresh) project, but it failed for the same reason (over-sized), which suggests that there might be some inter-project repository sharing going on in the background. This makes sense, but with that method failing, I’m not really sure what other options we have.

1 Like

I am also trying to run gc prune on the server to get rid of commits that I don’t want anymore. After much trial and error and searching on the internet, I can connect to the server with

ssh -T git@<servername>

It returns with “Welcome to GitLab, <user name>” but it seems I am still executing commands in my local directory.

How do I get into the particular group/repo on the server that I want, and how do I issue commands that execute on the server?

@Russell: Maybe this will help you https://git-scm.com/book/en/v2/Git-Internals-Maintenance-and-Data-Recovery