Добавте в проект .hqignore чтоб всякие логи, скомпилированные файлы не попадали в репозиторий, а только исходники.
Последняя строчка добавляет, чтоб Nuget пакеты игнорировались, вернее вся папка.
# use glob syntax
syntax: glob
*.obj
*.pdb
*.user
*.aps
*.pch
*.vspscc
*.vssscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.cache
*.ilk
*.log
*.lib
*.sbr
*.scc
[Bb]in
[Dd]ebug*/
obj/
[Rr]elease*/
_ReSharper*/
[Tt]humbs.db
[Tt]est[Rr]esult*
[Bb]uild[Ll]og.*
*.[Pp]ublish.xml
*.resharper
# ncrunch files
*.ncrunchsolution
*.ncrunchproject
# NuGet
packages/
Насчёт удаления папки из всей истории, цитата с stackoverflow.com:
Dont' worry, you cannot remove a file from prior history in Mercurial -- the history is generally immutable unless you start using extensions