GitHub can't sync “pre-receive hook declined”

For my Makerfaire .NET Microframework embedded work I’ve been using the wonderful Git integration within Visual Studio. For my repository, I’ve been using GitHub as I don’t mind it being public.

It has been a great experience so far, as I’ve been brought up on Visual Source Safe then Team Foundation Server, the way Git works has taken me some time to get used to, but the integrated tools has made the learning easier.


The other day I put some documentation into my project, one file was a Microsoft Publisher file that was extremely large as it held the graphics for my printed displays at the faire. I innocently committed the files into my local repository, then tried  to push it to GitHub. I got the

“pre-receive hook declined”

Error when trying to sync. It seems, quite reasonably, that there is a file size limit on what  can be added. However i’d made another commit since adding the file.

So for the future I document for myself how I got out of the problem.

First you have to get the command prompt git working. Go to Git Settings, on your version of the screen below it will have hyperlink to install 3rd party tools. Follow the link and install them.


Right click around the various windows and some of them have the option to open the command prompt, do so.




I ran the git rm command but using a directory filter to remove all instances of .pub files from my repository, going right back through all my history. The HEAD command says go to now and I could have specified a commit ID to limit the activity to one commit, but this was not needed. Git rewrote all my commits and so I finally pushed the changes back.


Job done!

Git is syncing ok now and I can move on with my prep for Makerfaire uk 2015.

Team Foundation Server (TFS) -The underlying connection was closed

Having build and upgraded Team Foundation server from 2010 to 2013, SQL Sever and Sharpoint Foundation 2013, running on VMWare ESX,  the team found very frequent and random like connection dropped problems, most frequent being:
  • connection that was expected to be kept alive was closed
  • The underlying connection was closed

This happened trying to check things in, or other source tracking related activities against Team Foundation Server.

The hunt was on the the cause, a week of investigation (on and off), heading off looking at the IIS settings, checking settings for WCF, looking for possible max connection limits, working pools and recycling logs etc.

Also investigated a post regarding network interface card (NIC) off loading and to switch it off on virtual boxes (I’m not convinced by that).


For others in a similar position, I present our solution, the static IP address that was assigned to the server had accidentally had a a printer assigned to it too. So whenever the user came in to work and put the printer on (not every day), we would experience these problems, for a bit, until the printer went off again. All due to the duplicate IP address.